我正在尝试使用Post方法构建一个rest客户端和一个服务器。我创建了一个示例客户端来提交其余请求。
public class TestRequests {
public static void main(String[] args) throws Exception {
String request = "http://localhost:8080/TestRest/resources/generic/";
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(request);
method.addParameter("name", "hello");
// Send POST request
int statusCode = client.executeMethod(method);
System.out.println("the status code is-----" + statusCode);
if (statusCode != HttpStatus.SC_OK) {
System.err.println("Method failed: " + method.getStatusLine());
}
InputStream rstream = null;
// Get the response body
rstream = method.getResponseBodyAsStream();
// Process the response from Yahoo! Web Services
BufferedReader br = new BufferedReader(new InputStreamReader(rstream));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
}
}
我有我的服务器端代码,我正在尝试读取我添加的参数。但我无法这样做。
@POST
@Produces("text/plain")
public String sayHelloPost(@QueryParam ("name") String name) {
return "Hello World!" + name;
}
在这里,我无法获得我从客户端发送的价值。
与GET一样正常。
此外,我想知道如何在我的请求中发送xml而不是字符串,并在响应中获取xml。可以直接发送XML文档。
提前致谢。
-Garudadwajan