There is no invoker proxy binding in 3.0
It is <container-invoker> and <container-invoker-conf>
see standardjboss.xml in /conf
Thanks for your reply.
I personnaly investigated the problem more deeply and sorry if I made a mistake in the previous message.
In our application, we try to deal with incoming messages twice (MaxTimesRedelivered=1) before sending it in the DLQ. And this is where the problem occurs in JBoss 3.0.x.
The incoming message is never redelivered if an exception is thrown in the onMessage() method.
public void onMessage(Message inMessage)
catch (Exception e)
throw new EJBException(e.getMessage());
I created a simple example that demonstrates this behavior.
The example is made of an MDB and a client that sends a message to the bean (simply start the 3.0.x server, call the default ant task followed by the run.client task).
An exception is automatically thrown in the bean while processing the message. I supposed that this message should be redilivered 10 times (MaxTimesRedelivered=10 by default) before beeing sent to the DLQ but nothing happened.
What should I do to ensure redelivery ?
I had problems downloading your example.
Maybe somthing wrong with my browser mime types? It
thought it was xml.
You are not supposed to throw an exception from onMessage.
You are suppoesed to setRollbackOnly() on the
message driven context.
Throwing a exception will work within jboss provided the
MDB is "Required", but you shouldn't really depend on this.
I called setRollbackOnly() on the
message driven context and everything worked prefectly.
Thanks a lot.