【发布时间】:2015-09-07 21:49:46
【问题描述】:
我的目标是使用 Apache CXF 为 Web 服务创建客户端,该客户端位于我只能通过腻子隧道到达的主机 (https://serverOutOfThisWorld) 中。
L8400 -> serverOutOfThisWorld:443
我在主机中添加了以下内容:
localhost serverOutOfThisWorld
所以我可以把我的浏览器放进去
https://serverOutOfThisWorld:8400/Bus/SomeWebService?wsdl
现在,我可以毫无问题地从 Web 浏览器访问这个 wsdl。但是这个 WSDL 有一些指向这个网络的导入,例如:
<xsd:import namespace="http://inter.es/scsp/esquemas/datos"
schemaLocation="https://serverOutOfThisWorld/scehma/data.xml"/>
<xsd:import ....
因此,下一步是使用 Fiddler 尝试将任何对 serverOutOfThisWorld:433 的调用映射到我的 serverOutOfThisWorld:8400。好的,我在 Tools/HOSTS 选项中创建了这个:
serverOutOfThisWorld:8400 serverOutOfThisWorld
现在,我可以在浏览器中导航到这个 url: https://serverOutOfThisWorld/Bus/SomeWebService?wsdl
并且,通过在 SoapUI 中定义的代理来使用 Fiddler,我可以基于该 URL 创建一个 New->Soap 项目。
但是当我尝试使用 SoapUI 和工具>Apache CFX 创建客户端时,我的问题就出现了。似乎这些 URL 没有被覆盖。在soapUI 日志中,我看到:
Mon Jun 22 14:07:22 CEST 2015:INFO:command: [cmd.exe, /C, wsdl2java.bat, -p, my.packages, -d, C:\eclipsewks\PruebaWS\src, -client, -exsh, false, -dns, true, -dex, true, -verbose, https://serverOutOfThisWorld:443/Bus/SomeWebService?wsdl]
似乎在 cmd/wsdl2Java 中没有使用 fiddler...
其他选项正在尝试使用 eclipse.. 但最后,eclipse 还使用 wsd2java 来创建客户端。我能做些什么?
【问题讨论】:
标签: eclipse cxf soapui fiddler wsdl2java