大家好我全部使用restFul Web服务公开服务 服务器端代码是
@RequestMapping(value =“/ getPerson”,method = RequestMethod.POST)
public ModelAndView getPerson(@RequestParam(“inputXml”)String inputXml){
-------------------------
----------------------------
}
返回新的ModelAndView(“userXmlView”,BindingResult.MODEL_KEY_PREFIX
+ String.class,“Test”);
}
客户端实施是:
URL oracle = new URL("http://localhost:8081/testWeb/restServices/getPerson?inputXml=input");
System.out.println("Oracle URl is "+oracle);
HttpURLConnection connection = (HttpURLConnection)oracle.openConnection();
connection.setDoOutput(true);
connection.setRequestProperty("Content-type", "application/xml; charset:ISO-8859-1");
connection.setRequestMethod("POST");
BufferedReader in = new BufferedReader(new InputStreamReader(
connection.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
我可以使用URL访问该服务
http://localhost:8081/testWeb/restServices/getPerson?inputXml="input"
实际上我的要求是,我需要传递xml字符串作为这样的输入
http://localhost:8081/testWeb/restServices/getPerson?inputXml="<?xml%20version="1.0"%20encoding="UTF-8"%20standalone="yes"?><product><code>WI1</code><name>Widget%20Number%20One</name><price>300.0</price></product>"
请帮我找到解决方案
答案 0 :(得分:0)
Maya,/getPerson
不是RESTful URI名称。您应该使用类似/person
的内容。这样,您可以使用HTTP GET
或DELETE
它。
答案 1 :(得分:0)
given().
formParam("formParamName", "value1").
queryParam("queryParamName", "value2").
when().
post("/something");
或春天RestTemplate
Map<String, String> vars = new HashMap<String, String>();
vars.put("count", "5");
restTemplate.getForObject(person, Person.class, vars);