MDB not consuming Messages - Websphere MQ 7 JBoss AS 7.1.1
arunsanjay Sep 24, 2012 2:35 PMHi
The issue being , MDB does not pick up messages that are present in the queue. I have the below configuration in the MDB
@MessageDriven( name="MessageQueueServiceMDB",
activationConfig =
{
@ActivationConfigProperty(propertyName="messagingType",propertyValue="javax.jms.MessageListener"),
@ActivationConfigProperty(propertyName = "destinationType",propertyValue ="javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue ="requestq"),
@ActivationConfigProperty(propertyName = "channel", propertyValue = "SYSTEM.DEF.SVRCONN"),
@ActivationConfigProperty(propertyName = "hostName", propertyValue = "localhost"),
@ActivationConfigProperty(propertyName = "queueManager", propertyValue = "QM_TEST"),
@ActivationConfigProperty(propertyName = "port", propertyValue = "1414"),
@ActivationConfigProperty(propertyName = "transportType", propertyValue = "CLIENT"),
@ActivationConfigProperty(propertyName = "username", propertyValue = "vhk834")
})
@ResourceAdapter("wmq.jmsra.rar")
public class MessageQueueServiceMDB implements MessageListener {
.....
}
Have defined the resource adapter definition in standalone-full.xml as below,
<resource-adapter>
<archive>
wmq.jmsra.rar
</archive>
<transaction-support>XATransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl" jndi-name="java:jboss/MQConnectionFactory" use-java-context="true" pool-name="connectionfactorypool">
<config-property name="port">
1414
</config-property>
<config-property name="hostName">
localhost
</config-property>
<config-property name="username">
vhk834
</config-property>
<config-property name="channel">
SYSTEM.DEF.SVRCONN
</config-property>
<config-property name="transportType">
CLIENT
</config-property>
<config-property name="queueManager">
QM_TEST
</config-property>
</connection-definition>
</connection-definitions>
<admin-objects>
<admin-object class-name="com.ibm.mq.connector.outbound.MQQueueProxy" jndi-name="java:jboss/requestq" use-java-context="true" pool-name="queuepool">
</admin-object>
</admin-objects>
</resource-adapter>
I have deployed the wmq.jmsra.rar in JBoss AS 7 . The application is also deployed successfully , going through the logs it does say the MDB is started. In order to verify whether the MDB is bound , inhibited GET on the queue in Websphere MQ Explorer. The Application started to throw exceptions stating MQ_GET_INHIBITED error .This conformed that the MDB is actually bound to the queue. However the MDB does not pickup any message from the queue. Any suggestions please?
I did go through the discussion https://community.jboss.org/thread/200690, which had one answer of moving forward to a 7.2.x build the problem was resolved, but is it the only solution?