ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From LeeCK <leechin_k...@yahoo.com>
Subject Invoke's outputVariable doesn't comply with defined schema
Date Thu, 10 Sep 2009 05:29:15 GMT

Hi,

Will ODE checks the response soap message against the schema in WSDL before
writing it into the outputVariable? 

I've trouble getting the outputVariable to comply with the defined schema in
WSDL. The invoke seems to ignored the schema defined in WSDL and write
whatever response it gets into the outputVariable (even soapFault!!).

I was expecting the example below to throw an error because the response
from endpoint doesn't match the schema defined in WSDL. But strangely, no
error is thrown and the response from endpoint is copy into the
$outputVariable.parameters! Why is that??

WSDL:
  <wsdl:types>
    <s:schema/>
      <s:element name="GetGroupInfoResponse" type="s:string"/>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="GetGroupInfoSoapOut">
    <wsdl:part name="parameters" element="tns:GetGroupInfoResponse" />
  </wsdl:message> 
  <wsdl:portType name="UserGroupSoap">
    <wsdl:operation name="GetGroupInfo">
      <wsdl:input message="tns:GetGroupInfoSoapIn" />
      <wsdl:output message="tns:GetGroupInfoSoapOut" />
    </wsdl:operation>
  </wsdl:portType>

BPEL script:
    <bpel:variables>
        <bpel:variable name="ProviderPLResponse"
messageType="ns0:GetGroupInfoSoapOut"/>
        <bpel:variable name="ProviderPLRequest"
messageType="ns0:GetGroupInfoSoapIn"/>      
    </bpel:variables>
    <bpel:invoke name="Invoke" 
                      partnerLink="ProviderPL" 
                      operation="GetGroupInfo" 
                      portType="ns0:UserGroupSoap" 
                      inputVariable="ProviderPLRequest" 
                      outputVariable="ProviderPLResponse"/>

Response received from external endpoint:
<?xml version="1.0" encoding="utf-8"?>
   <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <soap:Body>
         <GetGroupInfoResponse
xmlns="http://schemas.microsoft.com/sharepoint/soap/directory/">
            <GetGroupInfoResult>
               <GetGroupInfo>
                  <Group ID="7" 
                    Name="MyFirstGroup" 
                    Description="" 
                    OwnerID="1073741823" 
                    OwnerIsUser="True" />
               </GetGroupInfo>
            </GetGroupInfoResult>
         </GetGroupInfoResponse>
      </soap:Body>
   </soap:Envelope>


-- 
View this message in context: http://www.nabble.com/Invoke%27s-outputVariable-doesn%27t-comply-with-defined-schema-tp25377513p25377513.html
Sent from the Apache Ode User mailing list archive at Nabble.com.


Mime
View raw message