我在端点上创建了一个直通代理服务,并在发布 wsdl 选项中选择了指定源 URL 。端点对 wsdl 定义中的 xsd 的引用。代理 Web 服务生成罚款,但是当尝试从客户端 (SOAP UI) 加载此 Web 服务时,由于在代理服务 wsdl URL 中引用 xsd 的方式,它会引发错误。
具有 xsd 定义的实际 Web 服务示例
<types>
<xsd:schema>
<xsd:import namespace="http://service.example.com/" schemaLocation="http://172.16.91.82:7001/DemoService/DemoService?xsd=1"/>
</xsd:schema>
</types>
引用架构的代理服务示例。
<wsdl:types>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified">
<xsd:import namespace="http://service.example.com/" schemaLocation="SecuredServiceProxy?xsd=http://172.16.91.82:7001/DemoService/DemoService?xsd=1"/>
</xsd:schema>
</wsdl:types>
客户端在加载架构位置时遇到问题(这当然看起来无效)
1)我正在寻找一种方法来摆脱这个。
2) 此代理服务旨在对最终用户隐藏实际服务。xsd 模式在代理服务 wsdl 定义中列出的方式是将实际的端点信息泄露给最终用户。有没有办法避免在生成的代理服务的wsdl定义中显示xsd url?
谢谢。