[英]Spring consume rest json web-service error
下面的代碼導致錯誤
public ArrayList<model.SampleObject> getObjectByNameGet(String name) {
final String uri = "http://127.0.0.1:8080/services/example/{name}" ;
Map<String, String> map = new HashMap<String, String>();
map.put("name", name);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<SampleObject[]> responseEntity = null;
try {
responseEntity = restTemplate.getForEntity(uri, SampleObject[].class,map);
} catch (HttpStatusCodeException e) {
String errorpayload = e.getResponseBodyAsString();
throw e;
} catch (RestClientException e) {
throw e;
}
model.SampleObject result = restTemplate.getForObject(uri, model.SampleObject.class);
SampleObject resultOut[] = responseEntity.getBody();
ArrayList<SampleObject> arrayList = new ArrayList<SampleObject>(Arrays.asList(resultOut));
return arrayList;
}
在這條線上:
responseEntity = restTemplate.getForEntity(uri, SampleObject[].class,map);
但是服務是實時且可訪問的,其本地服務已運行
錯誤:
org.springframework.web.client.ResourceAccessException: I/O error on GET request for "http://127.0.0.1:8080/services/example/m":Permission denied: connect; nested exception is java.net.SocketException: Permission denied: connect
org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:543)
org.springframework.web.client.RestTemplate.execute(RestTemplate.java:497)
org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:258)
code.Client.getObjectByNameGet(Client.java:32)
org.apache.jsp.index_jsp._jspService(index_jsp.java:146)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
我添加-Djava.net.preferIPv4Stack = true到intellij VM選項也沒有運氣。
錯誤原因是什么? 提前致謝
經過長時間的Google和研究,我發現了問題的根源。 窗口8中存在一個錯誤,該錯誤導致Java套接字無法連接到任何URL。
在Windows 7測試中沒有問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.