Tôi đã bắt đầu một dự án nhỏ trong Java.
Tôi phải tạo một ứng dụng khách sẽ gửi xml tới url dưới dạng yêu cầu HTTP POST.
tôi cố nó bằng cách sử java.net.*
gói (Sau đây là đoạn mã) nhưng tôi nhận được lỗi như sau:Lỗi trả về cuộc gọi Webservice 500
java.io.IOException: Server returned HTTP response code: 500 for URL: "target url"
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
at newExample.main(newExample.java:36)
Mã của tôi là như sau:
try {
URL url = new URL("target url");
URLConnection connection = url.openConnection();
if(connection instanceof HttpURLConnection)
((HttpURLConnection)connection).setRequestMethod("POST");
connection.setRequestProperty("Content-Length", Integer.toString(requestXml.length()));
connection.setRequestProperty("Content-Type","text/xml; charset:ISO-8859-1;");
connection.setDoOutput(true);
connection.connect();
// Create a writer to the url
PrintWriter writer = new PrintWriter(new
OutputStreamWriter(connection.getOutputStream()));
// Get a reader from the url
BufferedReader reader = new BufferedReader(new
InputStreamReader(connection.getInputStream()));
writer.println();
writer.println(requestXml);
writer.println();
writer.flush();
String line = reader.readLine();
while(line != null) {
System.out.println(line);
line = reader.readLine();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Xin giúp với ví dụ thích hợp hoặc bất kỳ cách nào khác để làm điều này.
Lỗi/sai sót điểm ở mã trên hoặc các khả năng khác.
Web Service của tôi là trong khuôn khổ mùa xuân
xml để gửi có định dạng chuỗi: requestXml
Lỗi HTTP 500 là "lỗi máy chủ nội bộ" lỗi chung được trả lại khi dịch vụ gặp lỗi hoặc ném ngoại lệ. Bạn có thể muốn đọc toàn bộ nội dung phản hồi và xem có bất kỳ thông tin nào khác không. Mã lỗi –
500 là Lỗi Máy chủ Nội bộ. Vì vậy, tôi muốn tập trung vào máy chủ chứ không phải là khách hàng thực sự. – sfussenegger
Nếu URL của bạn là chính xác (có thể kiểm tra từ trình duyệt), bạn không thể làm gì nhiều. Có vẻ như lỗi phía máy chủ. – Nishant