You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Simon McClenahan <sm...@accertify.com> on 2011/06/20 22:46:52 UTC

selectionFailure in HelloWorld example

Hi,

I know it's not recommended but I have followed the tutorial for Eclipse BPEL Designer to create a Hello World BPEL deployed on Apache ODE. All seems well until I invoke the process method and I get a SOAP fault axis2ns268:selectionFailure . I have read http://ode.apache.org/assign.html and manually edited my HelloWorld.bpel to no avail.

<!-- HelloWorld BPEL Process [Generated by the Eclipse BPEL Designer] -->
<!-- Date: Mon Jun 20 10:33:59 CDT 2011 -->
<bpel:process name="HelloWorld"
         targetNamespace="http://helloworld"
         suppressJoinFailure="no"
         xmlns:tns="http://helloworld"
         xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
         queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0" expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0" exitOnStandardFault="yes">

    <!-- Import the client WSDL -->
                <bpel:import location="HelloWorldArtifacts.wsdl" namespace="http://helloworld"
                        importType="http://schemas.xmlsoap.org/wsdl/" />

    <!-- ================================================================= -->
    <!-- PARTNERLINKS                                                      -->
    <!-- List of services participating in this BPEL process               -->
    <!-- ================================================================= -->
    <bpel:partnerLinks>
        <!-- The 'client' role represents the requester of this service. -->
        <bpel:partnerLink name="client"
                     partnerLinkType="tns:HelloWorld"
                     myRole="HelloWorldProvider"
                     />
    </bpel:partnerLinks>

    <!-- ================================================================= -->
    <!-- VARIABLES                                                         -->
    <!-- List of messages and XML documents used within this BPEL process  -->
    <!-- ================================================================= -->
    <bpel:variables>
        <!-- Reference to the message passed as input during initiation -->
        <bpel:variable name="input"
                  messageType="tns:HelloWorldRequestMessage"/>

        <!--
          Reference to the message that will be returned to the requester
          -->
        <bpel:variable name="output"
                  messageType="tns:HelloWorldResponseMessage"/>
    </bpel:variables>

    <!-- ================================================================= -->
    <!-- ORCHESTRATION LOGIC                                               -->
    <!-- Set of activities coordinating the flow of messages across the    -->
    <!-- services integrated within this business process                  -->
    <!-- ================================================================= -->
    <bpel:sequence name="main">

        <!-- Receive input from requester.
             Note: This maps to operation defined in HelloWorld.wsdl
             -->
        <bpel:receive name="receiveInput" partnerLink="client"
                 portType="tns:HelloWorld"
                 operation="process" variable="input"
                 createInstance="yes"/>

        <bpel:assign name="HelloWorld_business_logic">

            <bpel:copy>
                <bpel:from>
                    <bpel:literal>
                        <tns:HelloWorldResponse xmlns:tns="http://helloworld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><tns:result>tns:result</tns:result>

                        </tns:HelloWorldResponse>
                    </bpel:literal>
                </bpel:from>
                <bpel:to variable="output" part="payload"></bpel:to>
            </bpel:copy>
            <bpel:copy>
                <bpel:from part="payload" variable="input">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
                        <![CDATA[tns:input]]>
                    </bpel:query>
                </bpel:from>
                <bpel:to part="payload" variable="output">
                    <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
                </bpel:to>
            </bpel:copy>
        </bpel:assign>

        <bpel:reply name="replyOutput"
               partnerLink="client"
               portType="tns:HelloWorld"
               operation="process"
               variable="output"
               />

        <!-- Generate reply to synchronous request -->


    </bpel:sequence>
</bpel:process>



When I turn on DEBUG for the server it says something about message being null, and from reading other posts on the list it probably means bad declared namespace. Can anyone help me where I've gone wrong?



15:41:17,093 DEBUG [MessageDAOImpl] getData 905 <?xml version="1.0" encoding="UTF-8"?>
<message><payload><HelloWorldRequest xmlns="http://helloworld" xmlns:q0="http://helloworld" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <input>hello Simon</input>
    </HelloWorldRequest></payload></message>
15:41:17,093 DEBUG [CorrelatorDAOImpl] findRoute []
15:41:17,095 DEBUG [CorrelatorDAOImpl] findRoute found nothing
15:41:17,097 DEBUG [JacobVPU] injecting PROCESS(...)
15:41:17,103 DEBUG [JacobVPU] injecting (...)
15:41:17,103 DEBUG [MessageDAOImpl] getData 905 <?xml version="1.0" encoding="UTF-8"?>
<message><payload><HelloWorldRequest xmlns="http://helloworld" xmlns:q0="http://helloworld" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <input>hello Simon</input>
    </HelloWorldRequest></payload></message>
15:41:17,104 DEBUG [ScopeFrame] Initialize variable: name={Variable __PROCESS_SCOPE:HelloWorld.input:OMessageVarType#6({http://helloworld}HelloWorldRequestMessage)} value=<?xml version="1.0" encoding="UTF-8"?>
<message><payload><HelloWorldRequest xmlns="http://helloworld" xmlns:q0="http://helloworld" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <input>hello Simon</input>
    </HelloWorldRequest></payload></message>
15:41:17,106 DEBUG [EMPTY] <empty name=OEmpty#16>
15:41:17,108 DEBUG [ASSIGN] Assign.copy({OCopy {VarRef {Variable __PROCESS_SCOPE:HelloWorld.output:OMessageVarType#10({http://helloworld}HelloWorldResponseMessage)}.payload{OXPath10Expression tns:result}}={Literal <?xml version="1.0" encoding="UTF-8"?>
<bpel:literal xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
                        <tns:HelloWorldResponse xmlns:tns="http://helloworld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><tns:result>tns:result</tns:result>

                        </tns:HelloWorldResponse>
                    </bpel:literal>}})
15:41:17,108 DEBUG [ASSIGN] Evaluating FROM expression "{Literal <?xml version="1.0" encoding="UTF-8"?>
<bpel:literal xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
                        <tns:HelloWorldResponse xmlns:tns="http://helloworld" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><tns:result>tns:result</tns:result>

                        </tns:HelloWorldResponse>
                    </bpel:literal>}".
15:41:17,108 DEBUG [ASSIGN] lvalue after eval [message: null]
15:41:17,108 DEBUG [ASSIGN] content <?xml version="1.0" encoding="UTF-8"?>
<message><payload><HelloWorldResponse xmlns="http://helloworld"/></payload></message>
15:41:17,108 INFO  [ASSIGN] Assignment Fault: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=59,faultExplanation=No results for expression: {OXPath10Expression tns:result}
15:41:17,110 DEBUG [SCOPE] ({OScope '__PROCESS_SCOPE:HelloWorld' id=3},TerminationChannel#1,ParentScopeChannel#2): has a fault handler for {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure: {OCatch faultName=null, faultVariable=null}
15:41:17,117 DEBUG [SCOPE] ({OCatch faultName=null, faultVariable=null},TerminationChannel:FH#14,ParentScopeChannel:FH#15): has no fault handler for {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure; scope will propagate FAULT!