JBoss Community

NullPointerException in JBossXSEntityResolver.getXMLInputSource still happening in 5.1.0

reply from Andre Zelenkovas in JBoss Web Services - View the full discussion

Thanks a million for pointing that out!

 

Is it fair to say that the minimum requirement for a WSDL contract to be properly consumed by JBossWS is for the WSDL to be valid, and, if the WSDL is invalid, the behaviour is undetermined? I'm asking this because we changed the WSDL to simply return a string, and the new WSDL is still invalid, but it works now. However, we can't expect it to work going forward if the WSDL is changed. Incidentally, the original WSDL is consumed with no problems by the JAX-WS reference implementation in standalone mode.

 

Here's the new WSDL:

 

<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://navteq.com/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://navteq.com/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://navteq.com/">
      <s:element name="GetNmapTargetingXml">
        <s:complexType />
      </s:element>
      <s:element name="GetNmapTargetingXmlResponse">
        <s:complexType>
          <s:sequence>

 

            <s:element minOccurs="0" maxOccurs="1" name="GetNmapTargetingXmlResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetAdvertisementNmapTargetingXmlMapping">
        <s:complexType />
      </s:element>
      <s:element name="GetAdvertisementNmapTargetingXmlMappingResponse">
        <s:complexType>

 

          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetAdvertisementNmapTargetingXmlMappingResult" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="string" nillable="true" type="s:string" />
    </s:schema>
  </wsdl:types>
  <wsdl:message name="GetNmapTargetingXmlSoapIn">

 

    <wsdl:part name="parameters" element="tns:GetNmapTargetingXml" />
  </wsdl:message>
  <wsdl:message name="GetNmapTargetingXmlSoapOut">
    <wsdl:part name="parameters" element="tns:GetNmapTargetingXmlResponse" />
  </wsdl:message>
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingSoapIn">
    <wsdl:part name="parameters" element="tns:GetAdvertisementNmapTargetingXmlMapping" />
  </wsdl:message>
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingSoapOut">

 

    <wsdl:part name="parameters" element="tns:GetAdvertisementNmapTargetingXmlMappingResponse" />
  </wsdl:message>
  <wsdl:message name="GetNmapTargetingXmlHttpGetIn" />
  <wsdl:message name="GetNmapTargetingXmlHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingHttpGetIn" />
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingHttpGetOut">
    <wsdl:part name="Body" element="tns:string" />

 

  </wsdl:message>
  <wsdl:message name="GetNmapTargetingXmlHttpPostIn" />
  <wsdl:message name="GetNmapTargetingXmlHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />
  </wsdl:message>
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingHttpPostIn" />
  <wsdl:message name="GetAdvertisementNmapTargetingXmlMappingHttpPostOut">
    <wsdl:part name="Body" element="tns:string" />

  </wsdl:message>

 

  <wsdl:portType name="NmapSoap">
    <wsdl:operation name="GetNmapTargetingXml">
      <wsdl:input message="tns:GetNmapTargetingXmlSoapIn" />
      <wsdl:output message="tns:GetNmapTargetingXmlSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <wsdl:input message="tns:GetAdvertisementNmapTargetingXmlMappingSoapIn" />
      <wsdl:output message="tns:GetAdvertisementNmapTargetingXmlMappingSoapOut" />
    </wsdl:operation>

 

  </wsdl:portType>
  <wsdl:portType name="NmapHttpGet">
    <wsdl:operation name="GetNmapTargetingXml">
      <wsdl:input message="tns:GetNmapTargetingXmlHttpGetIn" />
      <wsdl:output message="tns:GetNmapTargetingXmlHttpGetOut" />
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <wsdl:input message="tns:GetAdvertisementNmapTargetingXmlMappingHttpGetIn" />
      <wsdl:output message="tns:GetAdvertisementNmapTargetingXmlMappingHttpGetOut" />

 

    </wsdl:operation>
  </wsdl:portType>
  <wsdl:portType name="NmapHttpPost">
    <wsdl:operation name="GetNmapTargetingXml">
      <wsdl:input message="tns:GetNmapTargetingXmlHttpPostIn" />
      <wsdl:output message="tns:GetNmapTargetingXmlHttpPostOut" />
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <wsdl:input message="tns:GetAdvertisementNmapTargetingXmlMappingHttpPostIn" />

 

      <wsdl:output message="tns:GetAdvertisementNmapTargetingXmlMappingHttpPostOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="NmapSoap" type="tns:NmapSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetNmapTargetingXml">
      <soap:operation soapAction="http://navteq.com/GetNmapTargetingXml" style="document" />
      <wsdl:input>
        <soap:body use="literal" />

 

      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <soap:operation soapAction="http://navteq.com/GetAdvertisementNmapTargetingXmlMapping" style="document" />
      <wsdl:input>
        <soap:body use="literal" />

 

      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="NmapSoap12" type="tns:NmapSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetNmapTargetingXml">

 

      <soap12:operation soapAction="http://navteq.com/GetNmapTargetingXml" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">

 

      <soap12:operation soapAction="http://navteq.com/GetAdvertisementNmapTargetingXmlMapping" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>

 

  <wsdl:binding name="NmapHttpGet" type="tns:NmapHttpGet">
    <http:binding verb="GET" />
    <wsdl:operation name="GetNmapTargetingXml">
      <http:operation location="/GetNmapTargetingXml" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />

 

      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <http:operation location="/GetAdvertisementNmapTargetingXmlMapping" />
      <wsdl:input>
        <http:urlEncoded />
      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />

 

      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="NmapHttpPost" type="tns:NmapHttpPost">
    <http:binding verb="POST" />
    <wsdl:operation name="GetNmapTargetingXml">
      <http:operation location="/GetNmapTargetingXml" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />

 

      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetAdvertisementNmapTargetingXmlMapping">
      <http:operation location="/GetAdvertisementNmapTargetingXmlMapping" />
      <wsdl:input>
        <mime:content type="application/x-www-form-urlencoded" />

 

      </wsdl:input>
      <wsdl:output>
        <mime:mimeXml part="Body" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Nmap">
    <wsdl:port name="NmapSoap" binding="tns:NmapSoap">
      <soap:address location="http://intlbabe4.ilapqa.local/nmapcms/nmap.asmx" />

 

    </wsdl:port>
    <wsdl:port name="NmapSoap12" binding="tns:NmapSoap12">
      <soap12:address location="http://intlbabe4.ilapqa.local/nmapcms/nmap.asmx" />
    </wsdl:port>
    <wsdl:port name="NmapHttpGet" binding="tns:NmapHttpGet">
      <http:address location="http://intlbabe4.ilapqa.local/nmapcms/nmap.asmx" />
    </wsdl:port>
    <wsdl:port name="NmapHttpPost" binding="tns:NmapHttpPost">
      <http:address location="http://intlbabe4.ilapqa.local/nmapcms/nmap.asmx" />

 

    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

Reply to this message by going to Community

Start a new discussion in JBoss Web Services at Community