1

我的任务是将我项目的一些 RESTFUL 服务转换为 SOAP。在大量复制粘贴功能后,并使用我们现有的 SOAP 服务作为模型,我终于准备好部署只是遇到了

"WARNING: Can't find the request for http://localhost:9090/{ServiceName}/requirements/'s Observer

这不是我的服务的端点,根据我的 Tomcat 经理的说法是

http://localhost:9090/{ServiceName}/{ServiceName}

我不知道“需求”这个词是如何混入其中的,只能猜测它与 RESTFUL 有关,因为它的端点使用了@Path 注释“/requirements/” 但是,我已经清除了对这个类的所有引用以及来自客户端和服务器项目的路径,甚至让 IntelliJ 执行文件路径搜索单词“requirements”。

到目前为止我发现: - 客户端正在访问正确的端口。我已经跟踪执行到我的客户调用我的端口时,它在那里失败了。- 服务器能够响应。我可以手动将浏览器导航到我的 SOAP 服务的 URL 并执行它们。他们失败了,但由于我没有以这种方式向他们传递任何请求对象,这是可以预料的。

相关文件。如果还有其他可以帮助的,请这样说:

来自 applicationContext.xml

<jaxws:endpoint id="AMP" implementor="#ampWebServiceImpl" address="/AMPWebService/>

来自 WSDL

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="MAPWebService" targetNamespace="{URL}/services/AMPWebService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="{URL}/services/AMPWebService" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2007/05/addressing/metadata">
...
<wsdl:types>
<xs:schema targetNamespace="{URL}/services/AMPWebService" xmlns:tns="{URL}/services/AMPWebService" xmlns:xmime="http://www.w3.org/2005/05/xmlmime">
...
</xs:schema>
</wsdl:types>
...
<!--Messages-->
...
<wsdl:portType name="AMPWebService">
...
<!--Operations-->
</wsdl:portType>
...
<wsdl:binding name="AMPWebServiceBinding" type="tns:AMPWebService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
...
<!--operations-->
...
</wsdl:binding>
...
<wsdl:service name="AMPWebService">
<wsdl:port name="AMPWebServicePort" binding="tns:AMPWebServiceBinding">
<soap:address location="http://localhost:8088/mockAMPWebServiceBinding"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
4

0 回答 0