目前我有一个在tomcat中运行的Web服务(http:// localhost:8080 / myApp / getUsers )。我的Web服务将接受json字符串,然后进行相应的处理。我的网络服务代码如下:
@Path("/getUsers")
public class UsersWS
{
@POST
public Response post(String theRequestJSON)
{
try
{
JSONObject aJsonObj = new JSONObject(theRequestJSON);
String userID = aJsonObj.getString("userID");
System.out.println(userID);
}
}
}
所以,我的Web服务正在处理一个json字符串。所以现在,我需要从另一个JAVA类调用上面的Web服务(jsonObject在请求参数中具有userID)。
怎么做?不久,我需要使用JSON对象作为请求参数从JAVA类进行Web服务调用。如何在请求调用中将json作为请求参数发送。
答案 0 :(得分:5)
看看泽西岛:http://jersey.java.net
以下是关于如何使用客户端的好文章: http://blogs.oracle.com/enterprisetechtips/entry/consuming_restful_web_services_with
答案 1 :(得分:3)
使用本机URLConnection或Apache HttpClient向服务器发送HTTP请求。参数必须以key=value&key2=value2...
格式传递。因此,您可能需要以该格式重建JSON对象或使用其他特殊参数名称(如data=jsonstring
),然后使用某个库解析json字符串。
答案 2 :(得分:2)
@George基本上已经回答了你的问题,但就JSON处理而言,你可能还想看杰克逊http://jackson.codehaus.org/
这允许您快速将Java对象转换为JSON等效项。