Hi,
I am trying to deploy a process invoking an asynchronous
service in ODE 1.3.6. The process first calls a service which gives a random
number which I use as correlator for the next asynchronous partner link call.
The second partner link call invokes a web service which waits for anywhere
between 5 to 10 seconds randomly and then calls back the process.
When I run the process all the calls and callbacks are
happening, but the process is not completing. In the BPEL_EVENT table the last
event is ActivityStartEvent for the Receive activity. There is no activity
completion event for the Receive, nor is a process completion event present.
When I inspect the ode logs I am getting the following debug messages:
268024 [ODEServer-3] DEBUG org.apache.ode.bpel.engine.BpelRuntimeContextImpl -
MatcherEvent handling: correlatorId=JobProcessor.replyFinishedJob,
ckeySet=[{CorrelationKey setId=JobCorrelator, values=[AsynPrc_283316883906124]}]
268055 [ODEServer-3] DEBUG org.apache.ode.bpel.engine.BpelRuntimeContextImpl -
MatcherEvent handling: nothing to do, no matching message in DB
When I go to the ode source code, in
BpelRuntimeContextImpl.matcherEvent(), the MessageExchangeDAO is coming as null
for the CorrelationKeySet passed. This means there is no message exchange
record for the CorrelationKeySet passed. What is it am I missing which is
causing this piece of data not to be there in database?
Any help is greatly appreciated.
Regards,
Vinay