Hi All, sorry for the long message but have couple of things that i tried,
but both approaches failed.

BPEL Definition:

<?xml version="1.0" encoding="UTF-8"?>
<bpws:process
xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/";
xmlns:ns="http://client.epm.apps.matrixone.com";
xmlns:tns="http://eclipse.org/bpel/sample"; exitOnStandardFault="yes"
name="ECRProcess" suppressJoinFailure="yes"
targetNamespace="http://eclipse.org/bpel/sample";>
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/";
location="ECRProcess.wsdl" namespace="http://eclipse.org/bpel/sample"/>
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/";
location="ComMatrixoneAppsEpmMyECR.wsdl"
namespace="http://client.epm.apps.matrixone.com"/>
<bpws:partnerLinks>
<bpws:partnerLink myRole="ECRProcessProvider" name="client"
partnerLinkType="tns:ECRProcess" partnerRole="ECRProcessRequester"/>
<bpws:partnerLink name="CreateECRPartnerLink" partnerLinkType="ns:CreateECR"
partnerRole="you"/>
</bpws:partnerLinks>
<bpws:variables>
<bpws:variable messageType="tns:ECRProcessRequestMessage" name="input"/>
<bpws:variable messageType="tns:ECRProcessResponseMessage" name="output"/>
<bpws:variable messageType="ns:createBusResponse"
name="CreateECRPartnerLinkResponse"/>
<bpws:variable messageType="ns:createBusRequest"
name="CreateECRPartnerLinkRequest"/>
</bpws:variables>
<bpws:sequence name="main">
<bpws:scope name="Design Change Proposal">
<bpws:sequence name="HiddenSequence">
<bpws:receive createInstance="yes" name="receiveCreationRequest"
operation="receiveIssue" partnerLink="client" portType="tns:ECRProcess"
variable="input"/>
<bpws:assign name="Assign" validate="no">
<bpws:copy>
<bpws:from><![CDATA[concat("Hello,*******************", $input.password," ",
$input.username
," ",$input.type," ",$input.name," ",$input.rev," ",$input.policy,"
",$input.vault)]]></bpws:from>
<bpws:to part="payload" variable="output">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116";><![CDATA[/tns:response]]></bpws:query>
</bpws:to>
</bpws:copy>
</bpws:assign>
<bpws:assign name="AssignCreateRequest" validate="no">
<bpws:copy>
<bpws:from part="password" variable="input"/>
<bpws:to part="password" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="policy" variable="input"/>
<bpws:to part="policy" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="vault" variable="input"/>
<bpws:to part="vault" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="type" variable="input"/>
<bpws:to part="type" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="username" variable="input"/>
<bpws:to part="username" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="name" variable="input"/>
<bpws:to part="name" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="rev" variable="input"/>
<bpws:to part="rev" variable="CreateECRPartnerLinkRequest"/>
</bpws:copy>
</bpws:assign>
<bpws:assign name="SystemOut" validate="no">
<bpws:copy>
<bpws:from><![CDATA[concat("CreateECRPartnerLinkRequest ...wgn......",
$CreateECRPartnerLinkRequest.username," ",
$CreateECRPartnerLinkRequest.password
," ",$CreateECRPartnerLinkRequest.type,"
",$CreateECRPartnerLinkRequest.name," ",$CreateECRPartnerLinkRequest.rev,"
",$CreateECRPartnerLinkRequest.policy,"
",$CreateECRPartnerLinkRequest.vault)]]></bpws:from>
<bpws:to part="payload" variable="output">
<bpws:query
queryLanguage="http://www.w3.org/TR/1999/REC-xpath-19991116";><![CDATA[/tns:response]]></bpws:query>
</bpws:to>
</bpws:copy>
</bpws:assign>
<bpws:invoke inputVariable="CreateECRPartnerLinkRequest" name="CreateECR"
operation="createBus" outputVariable="CreateECRPartnerLinkResponse"
partnerLink="CreateECRPartnerLink" portType="ns:CreateECR"/>
<bpws:invoke inputVariable="output" name="callbackClient"
operation="onResult" partnerLink="client"
portType="tns:ECRProcessCallback"/>
</bpws:sequence>
</bpws:scope>
</bpws:sequence>
</bpws:process>

WSDL Definition :

<?xml version="1.0"?>
<definitions name="ECRProcess"
        targetNamespace="http://eclipse.org/bpel/sample";
        xmlns:tns="http://eclipse.org/bpel/sample";
        xmlns:plnk="http://schemas.xmlsoap.org/ws/2004/03/partner-link/";
        xmlns="http://schemas.xmlsoap.org/wsdl/";
        xmlns:xsd="http://www.w3.org/2001/XMLSchema";
        xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";>

        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                TYPE DEFINITION - List of services participating in this BPEL 
process 
                The default output of the BPEL designer uses strings as input 
and 
                output to the BPEL Process. But you can define or import any 
XML 
                Schema type and us them as part of the message types.
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <types>
                <schema attributeFormDefault="unqualified"
                        elementFormDefault="qualified"
                        targetNamespace="http://eclipse.org/bpel/sample";
                        xmlns="http://www.w3.org/2001/XMLSchema";>

                        <element name="ECRProcessResponse">
                          <complexType>
                          <sequence>
                                <element name="response" 
type="string"></element>
                          </sequence>
                          </complexType>
                        </element>

                </schema>
        </types>

        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                MESSAGE TYPE DEFINITION - Definition of the message types used 
as 
                part of the port type defintions
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <message name="ECRProcessRequestMessage">
       <part name="username" type="xsd:string"/>
       <part name="password" type="xsd:string"/>
       <part name="type" type="xsd:string"/>
       <part name="name" type="xsd:string"/>
       <part name="rev" type="xsd:string"/>
       <part name="vault" type="xsd:string"/>
       <part name="policy" type="xsd:string"/>
        </message>

        <message name="ECRProcessResponseMessage">
                <part name="payload" element="tns:ECRProcessResponse" />
        </message>


        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                PORT TYPE DEFINITION - A port type groups a set of operations 
into
                a logical service unit.
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <!-- portType implemented by the ECRProcess BPEL process -->
        <portType name="ECRProcess">
                <operation name="receiveIssue">
                        <input message="tns:ECRProcessRequestMessage" />
                </operation>
        </portType>

        <!-- portType implemented by the requester of ECRProcess BPEL process 
                for asynchronous callback purposes
        -->
        <portType name="ECRProcessCallback">
                <operation name="onResult">
                        <input message="tns:ECRProcessResponseMessage" />
                </operation>
        </portType>


        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                PARTNER LINK TYPE DEFINITION
                the ECRProcess partnerLinkType binds the provider and
                requester portType into an asynchronous conversation.
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <plnk:partnerLinkType name="ECRProcess">
                <plnk:role name="ECRProcessProvider" portType="tns:ECRProcess" 
/>
                <plnk:role name="ECRProcessRequester"
                        portType="tns:ECRProcessCallback" />
        </plnk:partnerLinkType>


        <binding name="ECRProcessSoapBinding" type="tns:ECRProcess">
                <soap:binding style="document"
                        transport="http://schemas.xmlsoap.org/soap/http"; />
                <operation name="receiveIssue">
                        <soap:operation soapAction="" style="document" />
                        <input>
                                <soap:body
                                        
namespace="http://sample.bpel.org/bpel/sample"; use="literal" />
                        </input>
                </operation>
        </binding>

        <binding name="ECRProcessResponseSoapBinding"
                type="tns:ECRProcessCallback">
                <soap:binding style="document"
                        transport="http://schemas.xmlsoap.org/soap/http"; />
                <operation name="onResult">
                        <soap:operation soapAction="" style="document" />
                        <input>
                                <soap:body
                                        
namespace="http://sample.bpel.org/bpel/sample"; use="literal" />
                        </input>
                </operation>

        </binding>


        <service name="ECRProcessInvokeService">
                <documentation>
                        Receives request for the invocation of ECR
                </documentation>
                <port name="ECRProcessPort"
                        binding="tns:ECRProcessSoapBinding">
                        <soap:address
                                
location="http://localhost:8080/ode/processes/ecrProcess"; />
                </port>
        </service>

        <service name="ECRProcessResponderService">
                <documentation>Return message</documentation>
                <port name="ECRProcessCallbackPort"
                        binding="tns:ECRProcessResponseSoapBinding">
                        <soap:address
                                
location="http://localhost:8080/ode/processes/ecrProcessResponse"; />
                </port>
        </service>


</definitions>

Request Message :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:sam="http://eclipse.org/bpel/sample";>
   <soapenv:Header/>
   <soapenv:Body>
         <sam:receiveIssue>
         <sam:username>Test Everything</sam:username>
         <sam:password>1234</sam:password>
         <sam:type>ECR</sam:type>
         <sam:name>ECR01001</sam:name>
         <sam:rev>-</sam:rev>
         <sam:policy>ECR (Standard)</sam:policy>
         <sam:vault>eService Sample</sam:vault>
         </sam:receiveIssue>
   </soapenv:Body>
</soapenv:Envelope>

Error shows :


Part: name=rev
typeName={http://www.w3.org/2001/XMLSchema}string from service
{http://eclipse.org/bpel/sample}ECRProcessInvokeService
12:49:49,009 DEBUG [ODEService] ODE routed to operation Operation:
name=receiveIssue
style=ONE_WAY,0
Input: name=RequestMessage
Message: name={http://eclipse.org/bpel/sample}ECRProcessRequestMessage
Part: name=password
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=policy
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=vault
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=type
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=username
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=name
typeName={http://www.w3.org/2001/XMLSchema}string
Part: name=rev
typeName={http://www.w3.org/2001/XMLSchema}string from service
{http://eclipse.org/bpel/sample}ECRProcessInvokeService
ERROR - GeronimoLog.error(108) | Exception occured while invoking ODE
org.apache.ode.axis2.OdeFault: Binding defines non-element document literal
part(s); nested exception is:
        java.lang.IllegalArgumentException: Binding defines non-element
document literal part(s)
        at
org.apache.ode.axis2.util.SoapMessageConverter.extractSoapBodyParts(SoapMessageConverter.java:379)
        at
org.apache.ode.axis2.util.SoapMessageConverter.parseSoapRequest(SoapMessageConverter.java:292)
        at
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:118)
        at
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:68)
        at
org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(ODEMessageReceiver.java:62)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:506)
        at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:328)
        at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:255)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.ja
:664)
        at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalArgumentException: Binding defines non-element
document literal part(s)
        at
org.apache.ode.axis2.Messages.msgBindingDefinesNonElementDocListParts(Messages.java:193)
        ... 24 more
12:49:49,009 ERROR [ODEService] Exception occured while invoking ODE
org.apache.ode.axis2.OdeFault: Binding defines non-element document literal
part(s); nested exception is:


Not sure why the error is thrown , the wsdl port definitions do not define
element attribute for the message 

<portType name="ECRProcess">
                <operation name="receiveIssue">
                        <input message="tns:ECRProcessRequestMessage"
                                 />
                </operation>
</portType>

The next thing i tried is redefining my portType definition to have an
element attribute

This is the modification i did:

                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <types>
                <schema attributeFormDefault="unqualified"
                        elementFormDefault="qualified"
                        targetNamespace="http://eclipse.org/bpel/sample";
                        xmlns="http://www.w3.org/2001/XMLSchema";>

                        <element name="ECRProcessResponse">
                          <complexType>
                          <sequence>
                                <element name="response" 
type="string"></element>
                          </sequence>
                          </complexType>
                        </element>
                        
            <element name="username" type="string" />
            <element name="password" type="string" />
            <element name="type" type="string" />
            <element name="name" type="string" />
            <element name="rev" type="string" />
            <element name="policy" type="string" />
            <element name="vault" type="string" />
                        

                </schema>
        </types>

        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                MESSAGE TYPE DEFINITION - Definition of the message types used 
as 
                part of the port type defintions
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <message name="ECRProcessRequestMessage">
       <part name="username" element="tns:username"/>
       <part name="password" element="tns:password"/>
       <part name="type" element="tns:type"/>
       <part name="name" element="tns:name"/>
       <part name="rev" element="tns:rev"/>
       <part name="vault" element="tns:vault"/>
       <part name="policy" element="tns:policy"/>
       
        </message>

        <message name="ECRProcessResponseMessage">
                <part name="payload" element="tns:ECRProcessResponse" />
        </message>


        <!-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                PORT TYPE DEFINITION - A port type groups a set of operations 
into
                a logical service unit.
                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
        <!-- portType implemented by the ECRProcess BPEL process -->
        <portType name="ECRProcess">
                <operation name="receiveIssue">
                        <input message="tns:ECRProcessRequestMessage"
                                name="RequestMessage" />
                </operation>
        </portType>

The error this time around was :

elementName={http://eclipse.org/bpel/sample}rev from service
{http://eclipse.org/bpel/sample}ECRProcessInvokeService
13:20:58,586 DEBUG [ODEService] ODE routed to operation Operation:
name=receiveIssue
style=ONE_WAY,0
Input: name=RequestMessage
Message: name={http://eclipse.org/bpel/sample}ECRProcessRequestMessage
Part: name=password
elementName={http://eclipse.org/bpel/sample}password
Part: name=policy
elementName={http://eclipse.org/bpel/sample}policy
Part: name=vault
elementName={http://eclipse.org/bpel/sample}vault
Part: name=type
elementName={http://eclipse.org/bpel/sample}type
Part: name=username
elementName={http://eclipse.org/bpel/sample}username
Part: name=name
elementName={http://eclipse.org/bpel/sample}name
Part: name=rev
elementName={http://eclipse.org/bpel/sample}rev from service
{http://eclipse.org/bpel/sample}ECRProcessInvokeService
ERROR - GeronimoLog.error(108) | Exception occured while invoking ODE
org.apache.ode.axis2.OdeFault: Unexpected element in SOAP body: message
{http://eclipse.org/bpel/sample}receiveIssue ele
ment {http://eclipse.org/bpel/sample}username.; nested exception is:
        java.lang.IllegalArgumentException: Unexpected element in SOAP body:
message {http://eclipse.org/bpel/sample}rec
eiveIssue element {http://eclipse.org/bpel/sample}username.
        at
org.apache.ode.axis2.util.SoapMessageConverter.extractSoapBodyParts(SoapMessageConverter.java:381)
        at
org.apache.ode.axis2.util.SoapMessageConverter.parseSoapRequest(SoapMessageConverter.java:292)
        at
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:118)
        at
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:68)
        at
org.apache.ode.axis2.hooks.ODEMessageReceiver.receive(ODEMessageReceiver.java:62)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:506)
        at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:328)
        at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:255)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java
:664)


Anup
-- 
View this message in context: 
http://www.nabble.com/org.apache.ode.axis2.OdeFault%3A-Binding-defines-non-element-document-literal-part%28s%29-tf4287132.html#a12203907
Sent from the Apache Ode User mailing list archive at Nabble.com.

Reply via email to