web-servicessoapwsdlsoapuisoapserver

SOAPUI error: does not close tag


When starting a SOAPUI SOAP project (from my local computer) using the following URL (on a server in my own network): http://myinternaldomainname/test2?wsdl

The following error occurs:

Error loading [http://myinternaldomainname/test2?wsdl]: org.apache.xmlbeans.XmlException: org.apache.xmlbeans.XmlException: error: does not close tag

The server is added to my hosts file:

192.168.2.1 myexampledomain

When I store the result of the WSDL page as a wsdl file, I can open the WSDL file as new SOAP project.

I used Zend\Soap\Autodiscovery to generate this WSDL:

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://myexampledomain/test2" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" name="MySoapService" targetNamespace="http://myexampledomain/test2">
    <types>
        <xsd:schema targetNamespace="http://myexampledomain/test2"/>
    </types>
    <portType name="MySoapServicePort">
        <operation name="method1">
            <documentation>This method takes ...</documentation>
            <input message="tns:method1In"/>
            <output message="tns:method1Out"/>
        </operation>
        <operation name="method2">
            <documentation>This method takes ...</documentation>
            <input message="tns:method2In"/>
            <output message="tns:method2Out"/>
        </operation>
    </portType>
    <binding name="MySoapServiceBinding" type="tns:MySoapServicePort">
        <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="method1">
            <soap:operation soapAction="http://myexampledomain/test2#method1"/>
            <input>
                <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://myexampledomain/test2"/>
            </input>
            <output>
                <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://myexampledomain/test2"/>
            </output>
        </operation>
        <operation name="method2">
            <soap:operation soapAction="http://myexampledomain/test2#method2"/>
            <input>
                <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://myexampledomain/test2"/>
            </input>
            <output>
                <soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://myexampledomain/test2"/>
            </output>
        </operation>
    </binding>
    <service name="MySoapServiceService">
        <port name="MySoapServicePort" binding="tns:MySoapServiceBinding">
            <soap:address location="http://myexampledomain/test2"/>
        </port>
    </service>
    <message name="method1In">
        <part name="inputParam" type="xsd:int"/>
    </message>
    <message name="method1Out">
        <part name="return" type="xsd:string"/>
    </message>
    <message name="method2In">
        <part name="inputParam1" type="xsd:int"/>
        <part name="inputParam2" type="xsd:string"/>
    </message>
    <message name="method2Out">
        <part name="return" type="xsd:float"/>
    </message>
</definitions>

In SOAPUI I tried proxy disabled/enabled/automatic


Solution

  • The problem was caused because a login page prevented me to use the WSDL in SOAP UI.