aspose file tools*
The moose likes EJB and other Java EE Technologies and the fly likes Regarding onMessage() call of an MDB Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Regarding onMessage() call of an MDB" Watch "Regarding onMessage() call of an MDB" New topic
Author

Regarding onMessage() call of an MDB

Sandeep K M
Greenhorn

Joined: Sep 11, 2007
Posts: 2
Hi,

I am very new to MDB�s. I want to do a simple check for a connection to my backend before executing the onMessage() method of my MDB.

Is there any way by which I can prevent the EJB container from calling the onMessage(). Basically I want to execute the onMessage() only if my check condition passes. The logic should be some thing like below:

if(Connection.status == running){
onMessage(){}
}

Do we have any facilities to do some think like above? Or else what I want to do is to check the connection condition inside onMessage() call and I want to block the further processing of the messages in the queue, some thing as shown below:

onMessage(){
if(Connection.status == running){
// Process further
}else{
// Block further processing and also the calls to onMessage() by the container
}
}

Any body who know how to do the below:

1.I want to execute the onMessage() only if my check condition passes.
2.How to block further processing of the onMessage() by the EJB container till my condition check passes

Thanks & Regards
-Sandeep
Freddy Wong
Ranch Hand

Joined: Sep 11, 2006
Posts: 959

I don't think you can control how the EJB container should invoke the onMessage().

What about if you do something like this:


SCJP 5.0, SCWCD 1.4, SCBCD 1.3, SCDJWS 1.4
My Blog
Sandeep K M
Greenhorn

Joined: Sep 11, 2007
Posts: 2
Hi Freddy,

Thanks for your reply. The application in which i am trying to achive this is an asyncronous system where in putting message to the queue is done in one flow i.e. outbound flow and processing message is done in a another flow i.e. inbound flow.

So i cant check the condition before putting the messages in to the queue. What i want to do is to block the execution of the onMessage() until my condition passes.

If you have any other idea to implement it? that will be very great
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Regarding onMessage() call of an MDB