我有以下问题:我是java EE的新手(只知道servlet和JSP),尤其是Web服务。 我需要为Web服务开发一个客户端(它需要在一分钟内查询服务以获取有用的信息)。 在我看来,这个客户端将是一个简单的基于java-SWing的程序,它将在应用程序客户端运行时通过简单的Socket查询Web服务。怎么办? 有可能这样做吗?如果没有,这是创建这样一个客户端最简单的方法吗?
答案 0 :(得分:4)
我建议使用Apache CXF。简单而强大的框架。 是的,可以使用此框架实现您所说的内容。只需阅读教程并玩一下就可以了。
答案 1 :(得分:1)
为了使用Java客户端连接到Web服务,请按照以下步骤操作:
1.获取托管Web服务的URL。这通常是fomat http://<IP_OF_SERVER>:<PORT_OF_SERVER>/<WEB_APP_NAME>?wsdl
2.获取服务的qualified name:
// 1st arg is the service URI
// 2nd is the service name published in the WSDL
QName qname = new QName(<Service_URI>, <SERVICE_NAME_PUBLISHED_WSDL>);<br/>
3。为service:
创建工厂 Service service = Service.create(url, qname);
4。提取端点接口,服务“端口”:
<Port_Class_Name> eif = service.getPort(<Port_Class_Name>);
5。现在使用Port上的方法,这是Web服务中的实际方法。
答案 2 :(得分:1)
您可能想尝试REST Webservice,尝试Jersey REST(或其他)。休息时,您可以使用http连接(GET和POST)连接它。
答案 3 :(得分:0)
为了使用Java客户端连接到Web服务,请遵循以下步骤:
1.URL wsdlUrl =新网址(“您的wsdl网址);
2.QName qname = new QName(“wsdl文件中的targetNamespace”,“wsdl文件中的服务名称”);
4.suppose getData()是你的SEI GetData data =(GetData)service.getPort(GetData.class);
5.使用数据对象调用您的方法 例如:data.getId(String name);这将返回您的回复