开发者

Spring-ws SOAP 404 error

开发者 https://www.devze.com 2023-02-13 06:31 出处:网络
i did a tutorial after this -> http://java.dzone.com/articles/spring-ws-how when i go to url htt开发者_开发百科p://localhost:8080/myService/services/MemberDetailsRequest.wsdl , i get the static wsdl f

i did a tutorial after this -> http://java.dzone.com/articles/spring-ws-how when i go to url htt开发者_开发百科p://localhost:8080/myService/services/MemberDetailsRequest.wsdl , i get the static wsdl file.. but when i use SoapUI to import in the wsdl file and then test it.. i only get 404 error, any1 has a solution to that?

any suggestions, why i can't get any responses with soapUI?


Check to make sure that your @PayloadRoot initializers are correct. My "localpart" definition did not match the element name in the XSD. here is how my Java class looks now:

 @PayloadRoot(localPart = "GetLoginRequest", namespace = "<namespace>")

And here is the XSD:

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="<namespace>" elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="<namespace>">
    <xsd:include schemaLocation="user-types.xsd"></xsd:include>

    <xsd:element name="GetLoginRequest" type="loginRequest"></xsd:element>

    <xsd:element name="GetLoginReply" type="loginReply"></xsd:element>
</xsd:schema>


Make sure SoapUI follows your URL mapping. In my case, SoapUI did not automatically append ".wsdl" at the end.

in my web.xml:

<servlet-mapping>
    <servlet-name>Hello</servlet-name>
    <url-pattern>/services/HelloPersonService.wsdl</url-pattern>
</servlet-mapping>

In Soap UI, the ".wsdl" was not there. Just add it manually in the address-bar like thing in Soap UI and proceed with your test.


PayloadRoot namespace and schema namespace should be same


Do a component scan on the package that contains all the endpoints. This worked for me. In memberservice-servlet.xml include the following

<context:component-scan base-package="org.bk.memberservice.endpoint" />
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号