Java中的WebService客户端

时间:2012-03-28 03:36:24

标签: java web

我有以下问题:我是java EE的新手(只知道servlet和JSP),尤其是Web服务。 我需要为Web服务开发一个客户端(它需要在一分钟内查询服务以获取有用的信息)。 在我看来,这个客户端将是一个简单的基于java-SWing的程序,它将在应用程序客户端运行时通过简单的Socket查询Web服务。怎么办? 有可能这样做吗?如果没有,这是创建这样一个客户端最简单的方法吗?

4 个答案:

答案 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文件中的服务名称”);

  1. 服务服务= Services.create(wsdlUrl,qname);
  2. 4.suppose getData()是你的SEI    GetData data =(GetData)service.getPort(GetData.class);

    5.使用数据对象调用您的方法 例如:data.getId(String name);这将返回您的回复