ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dan <leutnant....@gmail.com>
Subject explicit correlation - NullPointerException - receive behavior
Date Tue, 31 Jul 2007 02:55:32 GMT
Hi,
I'm trying out explicit correlations.  My sequence is essentially two sets
of recieve, invoke, and reply sets with correlations on the receives.  My
assumption is that receive will block until a message arrives.  What seems
to happen though is that the second receive is entered before an actual
message is received which triggers a correlation error.  Should receive
block until a message arrives?

Here's the pseudo code of what I'm doing followed by the exception.
(servicemix 3.0, ode r553562 (ca. July 8), Fedora 6)

<sequence>
   <receive messageA>  <correlation transactionID>
   <invoke serviceA>
   <reply requestA>   <<-- reply makes it back to the client

<<exception thrown around this time before messageB is ever sent by the
client>>

   <receive messageB> <correlation transactionID>
   <invoke serviceB>
   <reply requestB>
</sequence>
-------------------------------------------------------
19:03:29,980 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-54 |
ConsumerProcessor        | p.processors.ConsumerProcessor   98 | Resuming
continuation for exchange: ID:localhost.localdomain-41761-1185806196813-2:34
19:03:29,979 | ERROR | pool-2-thread-30 | BpelEngineImpl           |
ode.bpel.engine.BpelEngineImpl  325 | Scheduled job failed;
jobDetail={type=MATCHER, inmem=true, ckey=null, correlatorId=
30.ProxyServiceB, iid=12}
java.lang.NullPointerException
    at org.apache.ode.bpel.common.CorrelationKey.<init>(CorrelationKey.java
:71)
    at org.apache.ode.bpel.engine.WorkEvent.getCorrelationKey(WorkEvent.java
:97)
    at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(
BpelProcess.java:341)
    at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(
BpelEngineImpl.java:316)
    at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(
BpelServerImpl.java:364)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(
SimpleScheduler.java:316)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(
SimpleScheduler.java:315)
    at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(
SimpleScheduler.java:154)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(
SimpleScheduler.java:314)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(
SimpleScheduler.java:311)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Thread.java:595)
19:03:29,985 | ERROR | pool-2-thread-30 | SimpleScheduler          |
duler.simple.SimpleScheduler$4  328 | Error while executing transaction
org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
java.lang.NullPointerException
    at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(
BpelEngineImpl.java:326)
    at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(
BpelServerImpl.java:364)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(
SimpleScheduler.java:316)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(
SimpleScheduler.java:315)
    at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(
SimpleScheduler.java:154)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(
SimpleScheduler.java:314)
    at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(
SimpleScheduler.java:311)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(
ThreadPoolExecutor.java:650)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(
ThreadPoolExecutor.java:675)
    at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
    at org.apache.ode.bpel.common.CorrelationKey.<init>(CorrelationKey.java
:71)
    at org.apache.ode.bpel.engine.WorkEvent.getCorrelationKey(WorkEvent.java
:97)
    at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(
BpelProcess.java:341)
    at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(
BpelEngineImpl.java:316)
    ... 11 more
19:03:29,986 | DEBUG | btpool0-0 - Acceptor0 SelectChannelConnector @
0.0.0.0:8080 | JettyContextManager      | ntextManager$ThreadPoolWrapper
437 | Dispatching job: HEP@21218523[d=true,io=0,w=true,b=0|0]
19:03:29,986 | DEBUG | btpool0-44 | jetty                    |
ervicemix.http.jetty.JCLLogger   67 | resume continuation
org.mortbay.jetty.nio.SelectChannelConnector$RetryContinuation@9e032

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