CXF如何翻译WSDL';从本地主机到实际服务器URL?
到目前为止,我看到的所有wsdl都使用localhost来描述服务地址。e、 g:CXF如何翻译WSDL';从本地主机到实际服务器URL?,wsdl,jax-ws,cxf,wsdl2java,Wsdl,Jax Ws,Cxf,Wsdl2java,到目前为止,我看到的所有wsdl都使用localhost来描述服务地址。e、 g: <wsdl:service name="SQLService"> <wsdl:port name="SQLServiceSoap" binding="tns:SQLServiceSoap"> <soap:address location="http://localhost:8080/rservice/services/SQLServiceSoap" /> &l
<wsdl:service name="SQLService">
<wsdl:port name="SQLServiceSoap" binding="tns:SQLServiceSoap">
<soap:address location="http://localhost:8080/rservice/services/SQLServiceSoap" />
</wsdl:port>
</wsdl:service>
但是,当运行此类服务的客户端时,它不知何故知道该服务的真正URL在哪里,即使是在远程机器上运行
CXF如何实现这一“魔力”
那么,如果测试机器不是运行服务的机器,那么客户机JAR如何知道服务器的位置及其地址呢
我grep
-ed源代码和strings
-ed客户端的jar文件,没有找到服务器URL的任何痕迹
那这是怎么回事
更新:在我的超级自然检测工作中,我刚刚在客户端的JAR文件所在的目录中找到了一个名为config.xml
的文件。config.xml
包含实际服务器的URL。因此,在我继承的项目的特殊情况下,这就是如何做到的
现在的问题是:
在许多情况下,web服务将有一个生产URL和一个测试/QA/UAT URL。开发人员将根据测试URL进行开发,然后一旦它准备好用于生产,他将切换URL以指向生产 这是由开发人员决定如何完成的,没有标准的处理方法