当我们从另一家公司继承了一些客户时,我们继承了karaf / camel / jetty。我能够从旧服务器上取下原始karaf安装目录的副本,并在我们的新服务器上运行并运行很多。我是LAMP软件工程师,但我真的不熟悉Karaf。
服务回答的WSDL显示它的地址如...
<wsdl:service name="RtiService">
<wsdl:port binding="tns:RtiServiceSoap" name="RtiServiceSoap">
<soap:address location="http://int.example.com:8080/b2c"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
我已经设置了DNS,但我们想将WSDL更改为...
<wsdl:service name="RtiService">
<wsdl:port binding="tns:RtiServiceSoap" name="RtiServiceSoap">
<soap:address location="http://karaf.example.com:8080/b2c"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
我们遇到的情况是我们无法使用当前地址,因为它特定于服务器,而不是服务,因此无法将服务从服务器移动到服务器。如果WSDL中的地址与它尝试用于连接的URL不匹配,那么Soap客户端似乎无法连接。
我花了几个小时寻找一个看似简单的改变的明确答案,但提出的解决方案并没有提供所需的结果。
附加信息:
Karaf 2.2.1
Jetty7 2.6.0
骆驼2.6.0
更新
看来服务的jar文件位于/ deploy文件夹中。我尝试将更新的.wsdl文件放在该文件夹中,其名称与jar文件相同,重新启动并测试,但没有更改。