2012-07-25 8 views
9

Tôi mới sử dụng các dịch vụ web và cố gắng viết một máy khách web của RESTFul bằng cách sử dụng RestTemplate. Tôi đang sử dụng org.springframework.http.converter.xml.MarshallingHttpMessageConverter làm công cụ chuyển đổi thư và org.springframework.oxm.xstream.XStreamMarshaller thành marshaller.Spring RestTemplate Client - kết nối từ chối ngoại lệ

Có cách nào để gỡ lỗi thêm điều này hoặc tìm ra nguyên nhân gốc rễ của vấn đề này không?

lớp tiêu dùng của tôi trông như thế này -

@SuppressWarnings("unchecked") 
public List<Deal> getClientInformation() throws RestClientException { 
    return restTemplate.getForObject(webServiceURL, List.class); 

}

Ngoại lệ:

Exception in thread "main" org.springframework.web.client.ResourceAccessException: I/O error: Connection refused: connect; nested exception is java.net.ConnectException: Connection refused: connect 
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:359) 
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:307) 
at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:177) 
at main.java.com.sample.consumer.DealConsumer.getClientInformation(Consumer.java:35) 
at main.java.com.client.WebserviceConsumerTestClient.main(WebserviceConsumerTestClient.java:16) 

Nguyên nhân: java.net.ConnectException: kết nối từ chối: kết nối tại org.springframework .web.client.RestTemplate.doExecute (RestTemplate.java:359)

Trả lời

16

webServiceURL mà bạn đang cố gắng gọi không thể truy cập được. Đảm bảo đường dẫn webServiceURL là chính xác và đang lắng nghe.

PS. Ngoài ra kiểm tra xem có một số vấn đề tường lửa ở phía Server.

Wireshark có thể giúp bạn gỡ lỗi thêm.

http://www.wireshark.org/

+3

cảm ơn có vấn đề về tường lửa. Tôi đã có thể vượt qua được lỗi này bằng cách thêm vào dưới hai dòng trước khi nhấn webservice trong mã máy khách. System.setProperty ("proxyHost", "yourproxy.server.com"); System.setProperty ("proxyPort", "8080"); – PST

+2

cũng tuyệt vời hơn, bây giờ nếu vấn đề được giải quyết, bạn có thể đóng câu hỏi này bằng cách đánh dấu câu trả lời là chính xác. – dhamibirendra

+0

@dhamibirendra Cảm ơn bạn. – pudaykiran