WSIMPORT使用肥皂1.2用于肥皂1.1 WSDL



我已经为肥皂1.1提供了此WSDL,一旦我尝试使用wsimport生成我的Java代码,它将WSDL处理为1.2。哪些人会引发错误:com.sun.tools.ws.ws.wsdl.framework.parseexception:无效扩展元素:" soap:body"(在命名空间中" http://schemas.xmlsoap.org/wsdl/soap/"

如果我更改肥皂名称,请从以下方式更改:xmlns:soap =" http://schemas.xmlsoap.org/wsdl/soap12/到XMLNS:SOAP =" http://schemas.xmlsoap.org/wsdl/soap/它生成了我的代码,但是我不确定这有什么其他后果(我目前还不能连接到端点)。另外,我不想破解WSDL。

WSIMPORT中是否有任何已知错误,我们将其错误地处理为1.2的1.1 WSDL?(众所周知...搜索几个小时后我找不到有关此的信息)例如,我可以强迫Wsimport使用SOAP 1.1的工作吗?没有任何其他解决方案,而无需编辑WSDL?

WSDL代码在这里:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:rpa="urn:ns:cdm:reisinformatie:data:vi:1" xmlns:tns="urn:ns:cdm:reisinformatie:message:actuelelandelijkeberichten:1" xmlns:ns="urn:ns:cdm:reisinformatie:message:actuelelandelijkeberichten:1" targetNamespace="urn:ns:cdm:reisinformatie:message:actuelelandelijkeberichten:1">
    <wsdl:types>
        <xsd:schema xmlns:rpa="urn:ns:cdm:reisinformatie:data:vi:1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:ns:cdm:reisinformatie:message:actuelelandelijkeberichten:1" targetNamespace="urn:ns:cdm:reisinformatie:message:actuelelandelijkeberichten:1" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
            <xsd:import schemaLocation="ri-cdm-vi-lab.xsd" namespace="urn:ns:cdm:reisinformatie:data:vi:1"/>
            <xsd:element name="GeefActueleLandelijkeBerichtenRequestMessage" type="rpa:GeefActueleLandelijkeBerichtenRequestMessageType"/>
            <xsd:element name="GeefActueleLandelijkeBerichtenResponseMessage" type="rpa:GeefActueleLandelijkeBerichtenResponseMessageType"/>
            <xsd:element name="GeefActueleLandelijkeBerichtenFaultMessage" type="rpa:GeefActueleLandelijkeBerichtenFaultMessageType"/>
        </xsd:schema>
    </wsdl:types>
    <wsdl:message name="GeefActueleLandelijkeBerichtenRequest">
        <wsdl:part name="parameter" element="tns:GeefActueleLandelijkeBerichtenRequestMessage"/>
    </wsdl:message>
    <wsdl:message name="GeefActueleLandelijkeBerichtenResponse">
        <wsdl:part name="parameter" element="tns:GeefActueleLandelijkeBerichtenResponseMessage"/>
    </wsdl:message>
    <wsdl:message name="GeefActueleLandelijkeBerichtenFault">
        <wsdl:part name="Fout" element="tns:GeefActueleLandelijkeBerichtenFaultMessage"/>
    </wsdl:message>
    <wsdl:portType name="ActueleLandelijkeBerichtenSoap">
        <wsdl:documentation>Actuele LandelijkeBerichten Soap Port</wsdl:documentation>
        <wsdl:operation name="GeefActueleLandelijkeBerichten">
            <wsdl:input message="tns:GeefActueleLandelijkeBerichtenRequest"/>
            <wsdl:output message="tns:GeefActueleLandelijkeBerichtenResponse"/>
            <wsdl:fault name="Fout" message="tns:GeefActueleLandelijkeBerichtenFault"/>
        </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="ActueleLandelijkeBerichtenSoap" type="tns:ActueleLandelijkeBerichtenSoap">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:documentation>Actuele LandelijkeBerichten Soap Binding</wsdl:documentation>
        <wsdl:operation name="GeefActueleLandelijkeBerichten">
            <soap:operation soapAction="urn:GeefActueleLandelijkeBerichten"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
            <wsdl:fault name="Fout">
                <soap:body use="literal"/>
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="ActueleLandelijkeBerichten">
        <wsdl:documentation>Actuele LandelijkeBerichten Service</wsdl:documentation>
        <wsdl:port name="RPAActueleLandelijkeBerichtenSoap" binding="tns:ActueleLandelijkeBerichtenSoap">
            <soap:address location="NotDefined"/>
            <wsdl:documentation>Reisinformatie Pull Applicatie Actuele LandelijkeBerichten Soap Service</wsdl:documentation>
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>

注意:两个.xsd不包括

对,我们决定使用CXF(有效)生成代码,然后将其添加到交货文件中。

另外,我们公司的另一支团队遇到了同样的问题,也找不到解决方案。

所以,答案似乎是:使用CXF。

最新更新