Hi,
I've got a simple MDB like this:
@MessageDriven(activationConfig = { @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"), @ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "AUTO_ACKNOWLEDGE"), @ActivationConfigProperty(propertyName = "DLQMaxResent", propertyValue = "10"), @ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/mpsRequestQueue") }) @Name("requestReceiver") @Depends("jboss.j2ee:module=mps-datamodel-1.4-SNAPSHOT.jar,service=EJB3") public class PaymentRequestReceiverMDB implements MessageListener { @In("paymentResponseQueue") private QueueSender paymentResponseQueueSender; @In private QueueSession queueSession; }
This works fine. However, when omit the QueueSender field and just have a
@In private QueueSession queueSession;
I get one of the popular @In requires value
exceptions.
Why is that?
Cheers
Markus
P.S. components.xml looks like this:
<jms:queue-connection queue-connection-factory-jndi-name="java:/ConnectionFactory" /> <jms:managed-queue-sender name="paymentRequestQueue" auto-create="true" queue-jndi-name="queue/mpsRequestQueue"/> <jms:managed-queue-sender name="paymentResponseQueue" auto-create="true" queue-jndi-name="queue/mpsResponseQueue"/>
Because you need @In(create=true) - QueueSession isn't annotated @AutoCreate.
It probably could be, file an issue in JIRA for it to be and I'll check.