是否可以使用Axis 2 wsdl2java生成使用HTTPS的客户端代码?

时间:2009-05-22 17:26:34

标签: java soap axis2

使用默认参数,轴2 wsdl2java工具将wsdl文件作为输入,并生成使用HTTP协议与SOAP端点通信的客户端Java代码,如下例所示:

wsdl2java -uri MyService.wsdl

我想知道的是,是否有一个输入参数可以传递给wsdl2java工具,以生成通过HTTPS与SOAP端点进行通信的客户端代码。

2 个答案:

答案 0 :(得分:1)

以下帖子有你的答案,我不会抄袭和复制它。你可以从提供的ant xml中提取这些参数。您需要担心Java具有所需的证书。我相信这篇文章是针对客户端代码的。 https url也可能只需要在WSDL中指定为https。

http://article.gmane.org/gmane.comp.apache.webservices.axis.user/58499

答案 1 :(得分:1)

我们经常使用Axis over HTTPS。正如Ted所说,按顺序获取SSL证书(尤其是自签名)非常重要,因为它实际上是一个交易破坏者。

代码方面,我们通常针对普通的HTTP服务生成Axis存根。对wsdl2java命令生成的ServiceLocator子类的调用将具有“getMyService”方法,该方法除了不带参数的URL之外还将URL作为参数。根据确切的Axis版本和服务名称,类名可能略有不同。但是大多数情况下,以下示例演示了在实例化存根对象时将URL(HTTPS或HTTP)更改为指向所需位置的容易程度。

MyServiceServiceLocator locator = new MyServiceServiceLocator();
MyService_PortType myservice = locator.getMyService(new URL("https://www.myservice.net/MyService.jws"));

希望有所帮助。