xsd-schema nicht dargestellt werden durch wsdl

Ich entwickle einen WebService mit JAX-WS(ich bin mit wsimport Ziel auf jaxws-maven-plugin). Ich schrieb eine WSDL-Import eines XSD-schema.

WEB-INF/wsdl/service.wsdl
WEB-INF/wsdl/service.xsd

Auch ich generierten web-service-Klassen erstellt und Endpunkt und alle. Es hat alles Super geklappt bisher. Wenn ich lief meinen service auf den Tomcat 7 ist alles ok. Ich kann auf eine wsdl-Datei in meinem browser aus:

http://localhost:8080/webService/servlet-url?wsdl

aber ich kann nicht Zugang zu einem xsd-schema. Das problem ist in diesem wsdl:

<xsd:schema>
<xsd:import namespace="http://ws.service/domain/1.0" schemaLocation="service.xsd"/>
</xsd:schema>

Natürlich bei der Generierung der Klassen, wsdl-und xsd sind auf lokaler Pfad, aber ich will, dass Sie aus der Ferne zugegriffen werden, wenn Sie web-Dienst ausgeführt wird. Ich weiß, dass schemaLocation sollte so etwas wie dieses "http://localhost:8080/webService/servlet-url?xsd=1".

In wsdl vorgestellt, die im browser import sollte so Aussehen:

<xsd:schema>
    <xsd:import namespace="http://ws.service/domain/1.0" schemaLocation="http://localhost:8080/webService/servlet-url?wsdl&resource=service.xsd"/>
    </xsd:schema>

localhost:8080/webService/servlet?wsdl gibt mir:

wsdl:definitions targetNamespace="http://ws.serv.com/Service/1.0" name="emuiaService">         
<wsdl:types>
    <xsd:schema>
        <xsd:import namespace="http://ws.serv.com/Service/domain/1.0" schemaLocation="schema.xsd"/>
    </xsd:schema>
</wsdl:types>
<wsdl:message name="halloMsg">
    <wsdl:part name="parameters" element="dom:halloRequest"/>
</wsdl:message>
<wsdl:message name="halloResponseMsg">
    <wsdl:part name="return" element="dom:halloResponse"/>
</wsdl:message>

und so weiter...

InformationsquelleAutor bemol | 2012-06-13
Schreibe einen Kommentar