2

我有一些网络服务,例如:

<wsdl:port name="CalcWithPerson22HttpSoap11Endpoint" binding="ns:CalcWithPerson22Soap11Binding">  
            <soap:address location="http://localhost:8080/axis2/services/CalcWithPerson22"/>  
  </wsdl:port> 

在这些中,我需要将 soap:address location“http”更改为“https”。

我需要在 WSDL 文件的哪个位置进行更改?

4

3 回答 3

3

1.5.3 维护版本已经支持 https。所以我们也可以使用它

2010 年 11 月 12 日 - Apache Axis2/Java 版本 1.5.3 发布!1.5.3 是一个维护版本,包含以下改进:

  • 改进了使用 servlet 传输时对 SSL 的支持:现在可以配置 Axis2,以便生成的 WSDL 包含 https 端点 (AXIS2-4465)。
  • 改进了与 Rampart(AXIS2-3213 和 AXIS2-4870)和 Sandesha2(潜在的 HTTP 连接池不足)的兼容性。
  • Axiom 已升级到 1.2.10。此版本包含与 Rampart 相关的性能改进。
  • 应用程序(业务)故障不再记录在 ERROR 级别 (AXIS2-4280)。
  • 提高了对 SAAJ 规范的一致性。1.5.3 版本包含一组针对在主干上开发的 SAAJ 实现的修复和改进,但未包含在 1.5 分支的先前版本中。
  • Axis2 现在完全依赖于 Maven 中央存储库中可用的依赖项,不需要其他 Maven 存储库。这特别修复了 1.5.2 版本之后出现的构建问题。
  • Eclipse 和 IntelliJ IDEA 插件再次可以通过 Axis2 网站下载(以前的 1.5.x 版本只能从 Maven 存储库下载)。
于 2012-10-10T09:32:39.740 回答
0

1) 首先,您必须确保部署这些服务的应用程序服务器需要在 SSL/https 上运行。

2)无需更改wsdl。只需将客户端中的端点从您打算调用这些服务的位置更改为 https。

但是,您仍然需要更改 wsdl 中的肥皂地址。只需进行此更改:

<soap:address location="https://localhost:8080/axis2/services/CalcWithPerson22"/>

更新:

axis2.xml检查https transportReceiver。它在 1.5.3 以上的axis2 版本中默认启用。

<transportReceiver name="https"
class="org.apache.axis2.transport.http.SimpleHTTPServer">
<parameter name="port">8443</parameter>
</transportReceiver>

service.xml如果你只想在 https 上运行你的服务,它看起来像这样

<service name="TestWebservice" >
    <description>
        Please Type your service description here
    </description>
    <messageReceivers>
        <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
        <messageReceiver  mep="http://www.w3.org/2004/08/wsdl/in-out" 
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
    </messageReceivers>
    <transports> 
        <transport>https</transport> 
    </transports>
    <parameter name="ServiceClass">xx.xxx.xxx.TestWebservice</parameter>
</service>
于 2012-04-04T20:01:09.347 回答
0

在 xml 文件中添加“https”

<transportReceiver name="https" class="org.apache.axis2.transport.http.SimpleHTTPServer"> <parameter name="port">8443</parameter> </transportReceiver>  
于 2014-03-19T15:18:49.137 回答