Hi,

Following your advise I've just created a new issue in jira
https://issues.apache.org/jira/browse/ODE-929

It's the first time I've done that, and hope I have explained well enough the problem. Sorry if it is not an issue ;)

See you
Jorge

On 10/08/2011 14:53, George wrote:
Ok... I will try to do it asap.

I'm continuing testing the different stuff in BPEL so problably more
issues are to come ;) till I get knowledge of the programming methology.

TA
Jorge

On 10/08/2011 13:37, Waruna Ranasinghe wrote:
Hi,

This looks like a bug to me.
Please create a jira for this and attach the process to the jira as well.

Generally, if a message comes in to the ODE without a instance to be
routed,
are stored so that the message will be eventually routed to the instance.
There may be a bug in this functionality.

Thanks,
Waruna
On 9 August 2011 19:42, George<[email protected]> wrote:

There it goes.

TA


On 09/08/2011 7:14, Waruna Ranasinghe wrote:

Hi Jorge,

Will you be able to attach your whole process as a zip file?

Thanks,
Waruna

On 9 August 2011 05:11, George<[email protected]> wrote:

Hi again,

More info I forgot to mention.

A way to replicate the problem is:
1) Call the "process" function for the BPEL process with
customerID="jo"
2) Call the "seller" fuction for the BPEL process with customerID="jo"
3) Repeat the call to the "seller" fuction for the BPEL process with
customerID="jo".

After step 3 I cannot use customerID="jo" any longer, as it seems that
the
system got corrupted. The BPEL process point of entrance is not the
seller
but the process function. How is it possible that happens?

On 08/08/2011 18:55, George wrote:

Hi all,

I have created a simple project to test the correlation in BPEL, but
I've

got an unexpected behaviour (or at least I think it is). Let's show
you
the
example while trying to explain the output.


The process is quite simple, as it is a receive - assign - invoke -
reply

- Pick - invoke1 or invoke2. The idea is that the receive
initialize the
correlation set or variable property, and then in the pick it is
used to
continue the same process.


I call the BPEL WS using the process method and customerID "jo".
Then I

check in ODE management web and the process is active and it has
returned
the expected value from the reply. So I guess it is waiting at the
pick
function. Now I call the BPEL WS with the seller function and the
process
is
completed. Till now, no problem and everything as expected.


I repeat the process with other different customerIDs and there is no

problem.


However if I repeat a call to BPEL WS using the process method and

customerID "jo" (the same as the first call), I get the answer from
the
reply but when I check the process state the ODE management web
shows the
project is completed. Why is it not waiting at the pick and therefore
active? If I call the seller function to trigger the pick it seems
that
nothing happens as far as the ODE log display (I have DEBUG enabled).


Any idea? This is the normal behaviour? Could you further explain the

correlation behaviour? Does it mean that once you have a correlation
variable set to a value it is keep in the internal database for the
whole
life of the server? How do you can set the correlation set to "off"?


TA.
Jorge


Here is main code for the correlation example:

<vprop:property name="customerID" type="xsd:string"/>

<vprop:propertyAlias propertyName="tns:customerID"
messageType="tns:BPEL_**MultipleRequestMessage"
part="payload">
<vprop:query>tns:input</vprop:**query>
</vprop:propertyAlias>

<vprop:propertyAlias propertyName="tns:customerID"
messageType="tns:**sellerRequestMessage"
part="parameters">
<vprop:query>tns:input</vprop:**query>
</vprop:propertyAlias>

<vprop:propertyAlias propertyName="tns:customerID"
messageType="tns:**buyerRequestMessage"
part="parameters">
<vprop:query>tns:input</vprop:**query>
</vprop:propertyAlias>


...........


<bpel:receive name="receiveProcess" partnerLink="client"
portType="tns:BPEL_Multiple" operation="process" variable="input"
createInstance="yes">
<bpel:correlations>
<bpel:correlation set="order" initiate="yes" />
</bpel:correlations>
</bpel:receive>

..........


<bpel:pick name="PickToStopForAWhile">
<!-- Seller -->
<bpel:onMessage partnerLink="client"
portType="tns:BPEL_Multiple"
operation="seller"
variable="inputSeller">
<bpel:correlations>
<bpel:correlation set="order" initiate="no"/>
</bpel:correlations>
<bpel:sequence name="Call1">
<bpel:invoke name="InvokeServiceEmulator"

partnerLink="**ServiceEmulatorPL"

operation="setUser" portType="srvemu:**
ServiceEmulatorPortType"
inputVariable="**ServiceEmulatorPLSetUserReques**t">
</bpel:invoke>
</bpel:sequence>
</bpel:onMessage>
<!-- Buyer -->
<bpel:onMessage partnerLink="client"
portType="tns:BPEL_Multiple"
operation="buyer"
variable="inputBuyer">
<bpel:correlations>
<bpel:correlation set="order" initiate="no" />
</bpel:correlations>
<bpel:sequence name="Call2">
<bpel:invoke name="InvokeCalculator" partnerLink="CalculatorPL"
operation="Add" portType="calc:**CalculatorPortType"

inputVariable="**CalculatorPLAddRequest"

outputVariable="**CalculatorPLAddResponse">
</bpel:invoke>
</bpel:sequence>
</bpel:onMessage>
</bpel:pick>












Reply via email to