Я пытаюсь настроить базовый вызов службы Spring с помощью пакета URL, чтобы я мог сделать это через POST, а не получить.
Код клиента (код, вызывающий службу Spring):
String data = URLEncoder.encode("testStringFromGWT", "UTF-8") + "=" + URLEncoder.encode(message, "UTF-8");
URL url = new URL("http://localhost:8080/spring-hibernate-mysql/test/test1");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data);
wr.flush();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
// Process line...
}
wr.close();
rd.close();
Служба Spring:
@RequestMapping(value = "/test1", method = RequestMethod.POST)
public String loggedInUniversal_logout(
Model model,
HttpServletRequest request,
@RequestParam(value = "inputString", required = true) String inputString)
throws InterruptedException {
HttpSession session = request.getSession();
System.out.println("Request made from Client..." + inputString);
model.addAttribute("token", "It works");
return "token";
}
Когда я пытаюсь это сделать, я получаю:
java.io.FileNotFoundException: http://localhost:8080/spring-hibernate-mysql/test/test1
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1401)
Я не совсем уверен, что я делаю неправильно,Я могу подтвердить, что вызов правильно передается в Spring, так как я вижу, как печатается строка "Request made from Client..." + inputString
, но затем я получаю исключение FileNotFoundException на клиенте.Я собрал это воедино, посмотрев учебники, так что, думаю, я что-то здесь упустил, был бы признателен за любой совет.