ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Denis Weerasiri <ddweeras...@gmail.com>
Subject Re: Example of using loop activities
Date Tue, 14 Jul 2009 11:48:00 GMT
Hi phanlesang,
One thing you can try is ODE Instant Management service to check whether the
variable "detailIndex" is modified in a loop.
During the startup of ODE it deploys a Management service which can be used
to monitor the instance variables like "detailIndex".

You can use REST as follows
To get the instance information use (iid=instance id) -
http://localhost:8080/ode/processes/InstanceManagement/getInstanceInfo?iid=XXXX
To get variable information use (sid=scope id , varName=variableName) -
http://localhost:8080/ode/processes/InstanceManagement/getVariableInfo?sid=YYYY&varName=detailIndex

Hope this will help
Cheers,
Denis Weerasiri
http://ddweerasiri.blogspot.com

On Tue, Jul 14, 2009 at 6:09 AM, phanlesang <phanlesang@gmail.com> wrote:

>
> Hi,
> I've just tested an example using while loop. But it got run out of memory
> error. is there anything wrong with my code?
>
> Here is my code:
>
> <!-- SimpleInvokeProcess BPEL Process [Generated by the Eclipse BPEL
> Designer] -->
> <bpel:process name="SimpleInvokeProcess"
>
> targetNamespace="
> http://www.se.uni-hannover.de/soa08/tutorial/SimpleInvokeProcess"
>         suppressJoinFailure="yes"
>
> xmlns:tns="
> http://www.se.uni-hannover.de/soa08/tutorial/SimpleInvokeProcess"
>
> xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
>         xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
> xmlns:ns1="http://randomHelloService.tutorial.soa08.se.unihannover.de">
>
>    <!-- Import the client WSDL -->
>    <bpel:import
> namespace="http://randomHelloService.tutorial.soa08.se.unihannover.de"
> location="RandomHelloService.wsdl"
> importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
>    <bpel:import location="SimpleInvokeProcessArtifacts.wsdl"
> namespace="
> http://www.se.uni-hannover.de/soa08/tutorial/SimpleInvokeProcess"
>                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:SimpleInvokeProcess"
>                     myRole="SimpleInvokeProcessProvider"
>                     />
>        <bpel:partnerLink name="RandomHelloPL"
> partnerLinkType="tns:RandomHelloPLT"
> partnerRole="RandomHelloServiceProvider"></bpel:partnerLink>
>    </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="detailIndex" type="xsd:integer"/>
>
>        <bpel:variable name="input"
>                  messageType="tns:SimpleInvokeProcessRequestMessage"/>
>
>        <!--
>          Reference to the message that will be returned to the requester
>          -->
>        <bpel:variable name="output"
>                  messageType="tns:SimpleInvokeProcessResponseMessage"/>
>        <bpel:variable name="RandomHelloRequest"
> messageType="ns1:sayHelloRequest"></bpel:variable>
>        <bpel:variable name="RandomHelloResponse"
> messageType="ns1:sayHelloResponse"></bpel:variable>
>    </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
> SimpleInvokeProcess.wsdl
>             -->
>        <bpel:receive name="receiveInput" partnerLink="client"
>                 portType="tns:SimpleInvokeProcess"
>                 operation="process" variable="input"
>                 createInstance="yes"/>
>
>        <bpel:assign validate="no">
>            <bpel:copy>
>                <bpel:from>
>                1
>                </bpel:from>
>                <bpel:to variable="detailIndex"></bpel:to>
>            </bpel:copy>
>        </bpel:assign>
>
>        <bpel:while>
>        <bpel:condition
> expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
>        <![CDATA[$detailIndex <= 10]]>
>        </bpel:condition>
>        <!-- Generate reply to synchronous request -->
>        <bpel:assign validate="no" name="PrepareRandomHelloRequest">
>            <bpel:copy>
>                <bpel:from>
>                    <bpel:literal xml:space="preserve"><impl:sayHello
> xmlns:impl="http://randomHelloService.tutorial.soa08.se.unihannover.de"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>  <impl:withSpace></impl:withSpace>
> </impl:sayHello>
> </bpel:literal>
>                </bpel:from>
>                <bpel:to variable="RandomHelloRequest"
> part="parameters"></bpel:to>
>            </bpel:copy>
>            <bpel:copy>
>                <bpel:from>
>                    <bpel:literal xml:space="preserve">true</bpel:literal>
>                </bpel:from>
>                <bpel:to part="parameters" variable="RandomHelloRequest">
>                    <bpel:query
>
> queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[ns1:withSpace]]></bpel:query>
>                </bpel:to>
>            </bpel:copy>
>        </bpel:assign>
>        <bpel:invoke name="GetGreeting" partnerLink="RandomHelloPL"
> operation="sayHello" portType="ns1:RandomHelloService"
> inputVariable="RandomHelloRequest"
> outputVariable="RandomHelloResponse"></bpel:invoke>
>
>        <bpel:assign validate="no">
>            <bpel:copy>
>                <bpel:from>
>                 <![CDATA[$detailIndex + 1]]>
>                </bpel:from>
>                <bpel:to variable="detailIndex"></bpel:to>
>            </bpel:copy>
>        </bpel:assign>
>
>        </bpel:while>
>        <bpel:assign validate="no" name="PrepareOutput">
>            <bpel:copy>
>                <bpel:from xmlns:http="urn:http:namesapce">
>
> <![CDATA[concat(bpel:getVariableData('RandomHelloResponse', 'parameters',
> '/'), bpel:getVariableData('input', 'payload', '/'))]]>
>                </bpel:from>
>                <bpel:to variable="output" part="payload"></bpel:to>
>            </bpel:copy>
>        </bpel:assign>
>        <bpel:reply name="replyOutput"
>               partnerLink="client"
>               portType="tns:SimpleInvokeProcess"
>               operation="process"
>               variable="output"
>               />
>    </bpel:sequence>
> </bpel:process>
>
> Thanks for any help!
>
>
> -----
> Sang PL
> --
> View this message in context:
> http://www.nabble.com/Example-of-using-loop-activities-tp24471660p24471879.html
> Sent from the Apache Ode User mailing list archive at Nabble.com.
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message