如何为Web服务创建Java客户端?

时间:2012-02-25 07:01:00

标签: java web-services netbeans webservice-client

我已成功创建网络服务。测试它并获取WSDL文件。将使用此Web Service的客户端是一个简单的Java类。

我能够创建一个jsp客户端并调用Web Service的方法。但我需要从Java类调用Web服务。

如何使用Web服务绑定此Java客户端?

我在NetBeans中遵循以下步骤来创建Java客户端...

  1. 我创建了一个简单的J2SE应用程序。
  2. 使其成为我制作的WebService的Web服务客户端。
  3. 我正在获取WebService的Web服务引用。
  4. 但是我无法调用WebService的方法。这是客户端文件...

    package client_package;
    public class client {
    
    public static void main(String args[])
    {
       System.out.println("1");
       System.out.println(hello("megha"));
       System.out.println("2");
    }
    private static String hello(String name) {
    
    
        WS_package.WebService1 service = new WS_package.WebService1(); //package WS_package does not exists
        WS_package.WebService1 port = service.getWebService1Port(); //package WS_package does not exists
    
    
     name =  port.hello(name);
    
    return name;
    }
    }
    

2 个答案:

答案 0 :(得分:2)

您可以使用wsimport工具从命令行生成客户端存根文件:

wsimport -keep http://localhost:8080/webservices/helloService?wsdl

然后导入生成的文件并像上面那样使用它们

HelloServiceImplService helloService = new HelloServiceImplService();
HelloService hello = helloService.getHelloServiceImplPort();

还有一些框架可以与Web服务一起使用,例如Apache CXFApache Axis

更新:刚刚注意到一个老问题,如果OP知道答案,他应该更新主题。

答案 1 :(得分:0)

您可以尝试Jersey及其Client API