This discussion is archived
1 Reply Latest reply: Mar 10, 2013 1:59 PM by 303145 RSS

"Spurious" Invalid WSDL message harvesting OSB WSDLs

303145 Newbie
Currently Being Moderated
I am running OSB 11.1.1.4 and trying to harvest assets in preview mode for OER and I am getting an "Invalid WSDL" error from the introspector that isn't correct.

The error is:

28954 [main] ERROR com.oracle.oer.sync.framework.MetadataManager - Artifact harvest failed due to: An error occured introspecting URI file:/tmp/OSBHarvest-1362712014255/domain/arm.brm.rulesSrv/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0.proxy:
An error occured introspecting resource arm.brm.rulesSrv/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0 (ProxyService):
An error occured introspecting URI http://localhost.localdomain:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0:
Invalid WSDL. PortType [{urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement}ChildSupportEntitlement] is not defined in the current document
[http://localhost.localdomain:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0] or in any imported WSDL from this documents. Cannot proceed.

i.e. it is complaining that it cannot find a PortType in the document or any imported WSDL in this document. We are using a configuration where the top level (end point) WSDL only defines the service but it does import a WSDL that has the PortType matchign the name/namespace specified. So what is the problem?

For your information here is what shows in the web browser for the proxy WSDL: i.e. http://localhost:7001/sbresource?PROXY/arm.brm.rulesSrv/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0 displays:

<WL5G3N0:definitions xmlns:WL5G3N0="http://schemas.xmlsoap.org/wsdl/" xmlns:WL5G3N1="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement" xmlns:WL5G3N2="http://schemas.xmlsoap.org/wsdl/soap/" name="arm.brm.rulesSrv.evs.ChildSupportEntitlement" targetNamespace="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement">
<WL5G3N0:import location="http://localhost:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%3AWSDL%2Fmds%2Fevs%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0" namespace="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement"/>
<WL5G3N0:service name="arm.brm.rulesSrv.ChildSupportEntitlement">
<WL5G3N0:port binding="WL5G3N1:arm.brm.rulesSrv.ChildSupportEntitlement.Binding" name="arm.brm.rulesSrv.ChildSupportEntitlement.Endpoint">
<WL5G3N2:address location="http://localhost.localdomain:7001/arm.brm.rulesSrv/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0/arm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0"/>
</WL5G3N0:port>
</WL5G3N0:service>
</WL5G3N0:definitions>

as you can see there is an import and if I bring this up in a browser I get:

<WL5G3N0:definitions xmlns:WL5G3N0="http://schemas.xmlsoap.org/wsdl/" xmlns:WL5G3N1="urn:ird.govt.nz:ebo:util.cmn.SOAPHeader" xmlns:WL5G3N2="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement" xmlns:WL5G3N3="urn:ird.govt.nz:ebo:util.flt.Fault" xmlns:WL5G3N4="http://schemas.xmlsoap.org/wsdl/soap/" name="arm.brm.rulesSrv.evs.ChildSupportEntitlement" targetNamespace="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement">
<WL5G3N0:documentation>Version 1.0</WL5G3N0:documentation>
<WL5G3N0:types>
<xsd:schema xmlns:ebm="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement" xmlns:flt="urn:ird.govt.nz:ebo:util.flt.Fault" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapHdr="urn:ird.govt.nz:ebo:util.cmn.SOAPHeader" xmlns:tns="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xsd:import namespace="urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement" schemaLocation="http://localhost:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%3ASCHEMA%2Fmds%2Fevs%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0"/>
<xsd:import namespace="urn:ird.govt.nz:ebo:util.flt.Fault" schemaLocation="http://localhost:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%3ASCHEMA%2Fmds%2Febo%2Futil.flt.Fault_1.0"/>
<xsd:import namespace="urn:ird.govt.nz:ebo:util.cmn.SOAPHeader" schemaLocation="http://localhost:7001/sbresource?PROXY%2Farm.brm.rulesSrv%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%2Farm.brm.rulesSrv.evs.ChildSupportEntitlement_1.0%3ASCHEMA%2Fmds%2Febo%2Futil.cmn.SOAPHeader_1.0"/>
</xsd:schema>
</WL5G3N0:types>
<WL5G3N0:message name="soapHeader">
<WL5G3N0:part element="WL5G3N1:soapHeader" name="soapHeader"/>
</WL5G3N0:message>
<WL5G3N0:message name="assess">
<WL5G3N0:part element="WL5G3N2:assess" name="assess"/>
</WL5G3N0:message>
<WL5G3N0:message name="assessResponse">
<WL5G3N0:part element="WL5G3N2:assessResponse" name="assessResponse"/>
</WL5G3N0:message>
<WL5G3N0:message name="svcFault">
<WL5G3N0:part element="WL5G3N3:fault" name="svcFault"/>
</WL5G3N0:message>
<WL5G3N0:portType name="ChildSupportEntitlement">
<WL5G3N0:operation name="assess">
<WL5G3N0:input message="WL5G3N2:assess"/>
<WL5G3N0:output message="WL5G3N2:assessResponse"/>
<WL5G3N0:fault message="WL5G3N2:svcFault" name="svcFault"/>
</WL5G3N0:operation>
</WL5G3N0:portType>
<WL5G3N0:binding name="arm.brm.rulesSrv.ChildSupportEntitlement.Binding" type="WL5G3N2:ChildSupportEntitlement">
<WL5G3N4:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<WL5G3N0:operation name="assess">
<WL5G3N4:operation soapAction="assess" style="document"/>
<WL5G3N0:input>
<WL5G3N4:header message="WL5G3N2:soapHeader" part="soapHeader" use="literal"/>
<WL5G3N4:body use="literal"/>
</WL5G3N0:input>
<WL5G3N0:output>
<WL5G3N4:body use="literal"/>
</WL5G3N0:output>
<WL5G3N0:fault name="svcFault">
<WL5G3N4:fault name="svcFault" use="literal"/>
</WL5G3N0:fault>
</WL5G3N0:operation>
</WL5G3N0:binding>
</WL5G3N0:definitions>

which as you can see includes the PortType ChildSupportEntitlement in the target namespace: urn:ird.govt.nz:evs:arm.brm.rulesSrv.ChildSupportEntitlement.
In spite of this the harvester error says this cannot be found.

Can anyone elaborate on what the problem is?
  • 1. Re: "Spurious" Invalid WSDL message harvesting OSB WSDLs
    303145 Newbie
    Currently Being Moderated
    I've done some more experimenting and it appears to be a bug in the harvestor. If I consolidate the "end point WSDL" and the "abstract WSDL" into one complete WSDL (which can still import the XSD) then it works fine so it appears that the harvestor cannot/will not import multiple WSDL files to form a complete view of a WSDL (inspite of the error message suggesting that it has looked at all referenced documents). I'll raise this as a formal bug...

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points