I have a problem when using a mdb as a seam component. In the bean I inject some other seam somponents.
The problem is that when the server restart after a crash and the mdb is deployed it starts reading the messages
but seam is not initialized yet and I got an exception(listed above). If i start the server whith the queues
empty and submit a message to queue after the server start it is working ok.
The mdb is anothated like this :
@Name("videoConverter")
@MessageDriven(name = "VideoConverter",
activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/VideoConverterQueue"),
@ActivationConfigProperty(propertyName = "maxSession", propertyValue = "1")
})
@Pool(value = PoolDefaults.POOL_IMPLEMENTATION_STRICTMAX, maxSize = 1, timeout = 10000
Is there a posibility to stop or delay the sending off messages on server startup and start sending them only when
seam is fully funcional? I tried the @Depends antotatin on the bean but withowt success from the possible solution
my environment : jboss5.1 GA seam 2.2.0 GA jboss messaging 1.4
Any help would be appreceated
the error on startup :
11:24:20,477 ERROR [TxPolicy] javax.ejb.EJBTransactionRolledbackException: java.lang.IllegalStateException:
Attempted to invoke a Seam component outside an initialized application
11:24:30,483 ERROR [TxPolicy] javax.ejb.EJBException: Failed to acquire the pool semaphore, strictTimeout=10000