glamonta
14 years agoOccasional Contributor
Missing Operation [operation name] in WSDL defnition
I have the following request:
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<UsernameToken xmlns="http://orion.oracle.com/webservices" xsi:type="xsd:string">USERNAME</UsernameToken>
<PasswordText xmlns="http://orion.oracle.com/webservices" xsi:type="xsd:string">PASSWORD</PasswordText>
</soap:Header>
<soap:Body>
<getEntitlementClassesForUserElement xmlns="http://ws.web.ml3.orion.oracle.com/">
<userid xsi:type="xsd:string">GENERIC-EMPLOYEE_US@ORACLE.COM</userid>
<services xsi:type="xsd:string">DownloadPatch</services>
</getEntitlementClassesForUserElement>
</soap:Body>
</soap:Envelope>
using this WSDL:
<definitions
name="OC_UserEntitlementService"
targetNamespace="http://ws.web.ml3.orion.oracle.com/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://ws.web.ml3.orion.oracle.com/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ws.web.ml3.orion.oracle.com/"
elementFormDefault="qualified" xmlns:tns="http://ws.web.ml3.orion.oracle.com/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/">
<element name="getEntitlementClassesForUserElement">
<complexType>
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="getEntitlementClassesForUserResponseElement">
<complexType>
<sequence>
<element name="result" type="tns:UserEntitlement" nillable="true"/>
</sequence>
</complexType>
</element>
<complexType name="UserEntitlement">
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="tns:EntitlementService" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
<element name="firstName" type="string" nillable="true"/>
<element name="lastName" type="string" nillable="true"/>
</sequence>
</complexType>
<complexType name="EntitlementService">
<sequence>
<element name="service" type="string" nillable="true"/>
<element name="entitlementClass" type="string" nillable="true"/>
<element name="permission" type="string" nillable="true"/>
</sequence>
</complexType>
<element name="getUserCsiEntitlementElement">
<complexType>
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="getUserCsiEntitlementResponseElement">
<complexType>
<sequence>
<element name="result" type="tns:UserCsiEntitlement" nillable="true"/>
</sequence>
</complexType>
</element>
<complexType name="UserCsiEntitlement">
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="csiEntitlement" type="tns:CsiEntitlement" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="CsiEntitlement">
<sequence>
<element name="services" type="tns:EntitlementService" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
<element name="csi" type="string" nillable="true"/>
</sequence>
</complexType>
</schema>
</types>
<message name="OC_UserEntitlementService_getEntitlementClassesForUser">
<part name="parameters" element="tns:getEntitlementClassesForUserElement"/>
</message>
<message name="OC_UserEntitlementService_getEntitlementClassesForUserResponse">
<part name="parameters" element="tns:getEntitlementClassesForUserResponseElement"/>
</message>
<message name="OC_UserEntitlementService_getUserCsiEntitlement">
<part name="parameters" element="tns:getUserCsiEntitlementElement"/>
</message>
<message name="OC_UserEntitlementService_getUserCsiEntitlementResponse">
<part name="parameters" element="tns:getUserCsiEntitlementResponseElement"/>
</message>
<portType name="OC_UserEntitlementService">
<operation name="getEntitlementClassesForUser">
<input message="tns:OC_UserEntitlementService_getEntitlementClassesForUser"/>
<output message="tns:OC_UserEntitlementService_getEntitlementClassesForUserResponse"/>
</operation>
<operation name="getUserCsiEntitlement">
<input message="tns:OC_UserEntitlementService_getUserCsiEntitlement"/>
<output message="tns:OC_UserEntitlementService_getUserCsiEntitlementResponse"/>
</operation>
</portType>
<binding name="OC_UserEntitlementServiceSoapHttp" type="tns:OC_UserEntitlementService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getEntitlementClassesForUser">
<soap:operation soapAction="http://ws.web.ml3.orion.oracle.com//getEntitlementClassesForUser"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getUserCsiEntitlement">
<soap:operation soapAction="http://ws.web.ml3.orion.oracle.com//getUserCsiEntitlement"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="OC_UserEntitlementService">
<port name="OC_UserEntitlementServiceSoapHttpPort" binding="tns:OC_UserEntitlementServiceSoapHttp">
<soap:address location="ADDRESS:PORT/OC_UserEntitlementServiceSoapHttpPort"/>
</port>
</service>
</definitions>
I ran it in soapUI 2.5 and got "Schema Compliance - FAILED", "line -1: Missing operation [getEntitlementClassesForUser] in WSDL defnintion". I see the operation in the WSDL definition above. Ole mentioned that this may have been fixed with version 4.01. I downloaded and install version 4.01 and get the same Schema Compliance failure.
Any assistance would be greatly appreciated.
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<UsernameToken xmlns="http://orion.oracle.com/webservices" xsi:type="xsd:string">USERNAME</UsernameToken>
<PasswordText xmlns="http://orion.oracle.com/webservices" xsi:type="xsd:string">PASSWORD</PasswordText>
</soap:Header>
<soap:Body>
<getEntitlementClassesForUserElement xmlns="http://ws.web.ml3.orion.oracle.com/">
<userid xsi:type="xsd:string">GENERIC-EMPLOYEE_US@ORACLE.COM</userid>
<services xsi:type="xsd:string">DownloadPatch</services>
</getEntitlementClassesForUserElement>
</soap:Body>
</soap:Envelope>
using this WSDL:
<definitions
name="OC_UserEntitlementService"
targetNamespace="http://ws.web.ml3.orion.oracle.com/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://ws.web.ml3.orion.oracle.com/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ws.web.ml3.orion.oracle.com/"
elementFormDefault="qualified" xmlns:tns="http://ws.web.ml3.orion.oracle.com/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/">
<element name="getEntitlementClassesForUserElement">
<complexType>
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="getEntitlementClassesForUserResponseElement">
<complexType>
<sequence>
<element name="result" type="tns:UserEntitlement" nillable="true"/>
</sequence>
</complexType>
</element>
<complexType name="UserEntitlement">
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="tns:EntitlementService" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
<element name="firstName" type="string" nillable="true"/>
<element name="lastName" type="string" nillable="true"/>
</sequence>
</complexType>
<complexType name="EntitlementService">
<sequence>
<element name="service" type="string" nillable="true"/>
<element name="entitlementClass" type="string" nillable="true"/>
<element name="permission" type="string" nillable="true"/>
</sequence>
</complexType>
<element name="getUserCsiEntitlementElement">
<complexType>
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="services" type="string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="getUserCsiEntitlementResponseElement">
<complexType>
<sequence>
<element name="result" type="tns:UserCsiEntitlement" nillable="true"/>
</sequence>
</complexType>
</element>
<complexType name="UserCsiEntitlement">
<sequence>
<element name="userid" type="string" nillable="true"/>
<element name="csiEntitlement" type="tns:CsiEntitlement" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="CsiEntitlement">
<sequence>
<element name="services" type="tns:EntitlementService" nillable="true" minOccurs="0"
maxOccurs="unbounded"/>
<element name="csi" type="string" nillable="true"/>
</sequence>
</complexType>
</schema>
</types>
<message name="OC_UserEntitlementService_getEntitlementClassesForUser">
<part name="parameters" element="tns:getEntitlementClassesForUserElement"/>
</message>
<message name="OC_UserEntitlementService_getEntitlementClassesForUserResponse">
<part name="parameters" element="tns:getEntitlementClassesForUserResponseElement"/>
</message>
<message name="OC_UserEntitlementService_getUserCsiEntitlement">
<part name="parameters" element="tns:getUserCsiEntitlementElement"/>
</message>
<message name="OC_UserEntitlementService_getUserCsiEntitlementResponse">
<part name="parameters" element="tns:getUserCsiEntitlementResponseElement"/>
</message>
<portType name="OC_UserEntitlementService">
<operation name="getEntitlementClassesForUser">
<input message="tns:OC_UserEntitlementService_getEntitlementClassesForUser"/>
<output message="tns:OC_UserEntitlementService_getEntitlementClassesForUserResponse"/>
</operation>
<operation name="getUserCsiEntitlement">
<input message="tns:OC_UserEntitlementService_getUserCsiEntitlement"/>
<output message="tns:OC_UserEntitlementService_getUserCsiEntitlementResponse"/>
</operation>
</portType>
<binding name="OC_UserEntitlementServiceSoapHttp" type="tns:OC_UserEntitlementService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getEntitlementClassesForUser">
<soap:operation soapAction="http://ws.web.ml3.orion.oracle.com//getEntitlementClassesForUser"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="getUserCsiEntitlement">
<soap:operation soapAction="http://ws.web.ml3.orion.oracle.com//getUserCsiEntitlement"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="OC_UserEntitlementService">
<port name="OC_UserEntitlementServiceSoapHttpPort" binding="tns:OC_UserEntitlementServiceSoapHttp">
<soap:address location="ADDRESS:PORT/OC_UserEntitlementServiceSoapHttpPort"/>
</port>
</service>
</definitions>
I ran it in soapUI 2.5 and got "Schema Compliance - FAILED", "line -1: Missing operation [getEntitlementClassesForUser] in WSDL defnintion". I see the operation in the WSDL definition above. Ole mentioned that this may have been fixed with version 4.01. I downloaded and install version 4.01 and get the same Schema Compliance failure.
Any assistance would be greatly appreciated.