从代理URL访问WSDL时出现问题

时间:2013-10-15 13:00:30

标签: java web-services soap proxy wsdl

我创建了一个基于SOAP的Web服务并部署在我的本地服务器(Tomcat)上。

现在我将其中一个代理服务器(托管在互联网上)指向我的本地服务器。

当我从代理URL访问WSDL时,将使用本地服务器URL来进行schemalocation。

<definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-              wssecurity-utility-1.0.xsd" xmlns:wsp="http://www.w3.org/ns/ws-policy"             name="MovieServiceImplService">
<types>
<xsd:schema>
<xsd:import namespace="http://movies.media.com/" schemaLocation="***http://123.13.33.44:8888/ws-test/Movietest?xsd=1***"/>
</xsd:schema>
</types>
<message name="searchByTitle">
<part name="parameters" element="tns:searchByTitle"/>
</message>
<message name="searchByTitleResponse">
<part name="parameters" element="tns:searchByTitleResponse"/>
</message>
....

My proxy url is https://abcd:8990. I want the schemalocation to be https://abcd:8990/ws-test/Movietest?xsd=1

有人可以告诉我可以采取哪些措施来解决这个问题。

1 个答案:

答案 0 :(得分:0)

感谢Keerthi Ramanathan。

   You should make use of ProxyPreserveHost directive of Apache mod_proxy module 

这对我有用。但还有一个问题。我的apache服务器是https,并且schemalocation url正在成为http url。我无法理解原因。你知道为此做了什么吗?

目前,我已删除了ssl。