有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

尝试使用Spring发出HTTP请求时出现java错误“需要不兼容的类型”

我正在处理用所有重要信息、URL、正文参数、URL参数、方法类型填充对象(CrsApi)的数据。我有一个这样的集合,我只想循环并调用一个方法来执行每个方法并返回JSON对象

根据我在谷歌上搜索到的,用Spring实现这一点的最好方法是通过RestTemplate。Exchange()函数。但是,它不允许我为“class responseType”输入一个类,这会给我下面指出的错误。我不希望必须创建不同的专用函数,或者必须创建一个特定于param的类来保存响应。我只想要一个普通的Json对象,我可以用一种通用的方式处理它,我可以用这个库来处理它吗

    for(Record rec : Records){
        //Call API to update 
        CrsApi tmpApi = apiUtil.getNewApi(rec);
        handleResponse(doAPICall(tmpApi));
    }


public JSONObject doAPICall(CrsApi apiCall){
/** Handle putting on URL Parameters later **/

//---Error incompatible types required: org.json.JSONObject found: org.springframework.http.ResponseEntity<org.json.JSONObject>
    HttpEntity<JSONObject> httpEntity = new HttpEntity<JSONObject>(apiCall.getBodyParameters());
//---
    JSONObject x = restTemplate.exchange(apiCall.getURL(), apiCall.getHttpMethod(),httpEntity, JSONObject.class);
}

共 (1) 个答案

  1. # 1 楼答案

    哈。。明白了

        ResponseEntity<JSONObject> x = restTemplate.exchange(apiCall.getURL(), apiCall.getHttpMethod(),httpEntity, JSONObject.class);
    

    我不怎么处理泛型类类型