Hi,
I'm not familiar with JBoss MQ but in JBoss Messaging 1.4 only when a
message has failed to be delivered for certain times (default 10) can it
go to DLQ if present. I think JBoss MQ should have similar meaning. Can
you check with the jboss mq doc to make sure you are using it right?
Howard
Sheeraz Junejo wrote:
Hi,
I am hoping to get some answer from this list(finger crossed). My
question is; How to redirect message to default DLQ?.
DLQ here is the one which is created by jBoss when we start it as
'run.bat --b 0.0.0.0 --c all' [Note: I want it to use cluster setup]
along with some other queues called A,B,C,D... with two of my queues
like RequestQueue and ResponseQueue. When My MDB fail to post message
to server it gives an exception where I think by default the message
resides in RequestQueue should get redirected to DLQ [jndi: queue/DLQ]
where one other MDB is waiting and post message to some other instance
of my server.
I have deployed following in my '<Jboss_Home>/server/all/deploy'
directory;
1) BrowserWeb.war à Successfully
deployed web application which is putting message on queue and
fetching messages back from reply queue.
2) Jremote-ra.rar à Successfully
deployed resource adapter which provides connectivity to the database
server on port *'20005'* using first connection factory in
*'server-ds.xml'*. If database server service goes down on port
*20005* my primary *MDB* will give an exception here message should
get redirected to jBoss default *DLQ* and my backup *MDB_DLQ* should
read message from *DLQ* and will try to use second connection factory
which will try to connect on port *'20003'* where my database server
is alive.
*_Server-ds.xml (Deployment Descriptor uses above resource adaptor)_*
*_ _*
<?xml version="1.0" encoding="utf-8"?>
<!--
================================================================================
-->
<!--
-->
<!-- JBoss Server
Configuration -->
<!--
-->
<!-- jRemote resource adapter deployment for JBoss, configured for
local connection -->
<!--
-->
<!--
================================================================================
-->
<connection-factories>
<tx-connection-factory>
<jndi-name>jca/t24ConnectionFactory</jndi-name>
<rar-name>jremote-ra.rar</rar-name>
<connection-definition>com.jbase.jremote.JConnectionFactory</connection-definition>
<config-property name="host"
type="java.lang.String">10.44.5.138</config-property> -->
<config-property name="port"
type="java.lang.Integer">*20005*</config-property>
<config-property name="allowInput"
type="java.lang.Boolean">true</config-property>
<config-property name="compression"
type="java.lang.Boolean">true</config-property>
<config-property name="compressionThreshold"
type="java.lang.Integer">2048</config-property>
<!--pooling parameters-->
<min-pool-size>1</min-pool-size>
<max-pool-size>10</max-pool-size>
<prefill>true</prefill>
</tx-connection-factory>
<tx-connection-factory>
<jndi-name>jca/t24ConnectionFactory_DLQ</jndi-name>
<rar-name>jremote-ra.rar</rar-name>
<connection-definition>com.jbase.jremote.JConnectionFactory</connection-definition>
<config-property name="host"
type="java.lang.String">10.44.5.138</config-property> -->
<config-property name="port"
type="java.lang.Integer">*20003*</config-property>
<config-property name="allowInput"
type="java.lang.Boolean">true</config-property>
<config-property name="compression"
type="java.lang.Boolean">true</config-property>
<config-property name="compressionThreshold"
type="java.lang.Integer">2048</config-property>
<!--pooling parameters
<min-pool-size>1</min-pool-size>-->
<max-pool-size>10</max-pool-size>
<!--<prefill>true</prefill>-->
</tx-connection-factory>
</connection-factories>
*_Destination-service.xml (For JMS)_*
<?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: jbossmq-destinations-service.xml 25907 2004-11-16 04:32:39Z
ejort $ -->
<!--
| This file defines the default Queues and Topics that JBossMQ
| ships with. The default Queues and Topics are used by the
| JBoss test suite and by the sample jms programs.
|
| You can add other destinations to this file, or you can create other
| *-service.xml files to contain your application's destinations.
-->
<server>
<!-- Destination without a configured SecurityManager or without a
a SecurityConf will default to role guest with read=true,
write=true,
create=false.
-->
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSQueue">
<depends
optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
<mbean code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=t24OFSReplyQueue">
<depends
optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>
</server>
*_MDB is a jar file contains following xml in META-INF_*
*_Ejb-jar.xml_*
*_ _*
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar id="EJBJar_OfsMessageMDB" version="2.1"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>OFSMessage</display-name>
<enterprise-beans>
<message-driven id="MessageDriven_OfsMessageMDB">
*<!---- Simple message driven bean-->*
<display-name>OFSMessage Bean</display-name>
<ejb-name>OFSMessageMDB</ejb-name>
<ejb-class>com.temenos.ofsmessage.mdb.OFSMessageMDB</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
<activation-config>
<activation-config-property>
<activation-config-property-name>acknowledgeMode</activation-config-property-name>
<activation-config-property-value>Auto-acknowledge</activation-config-property-value>
</activation-config-property>
</activation-config>
<resource-ref id="ResourceRef_jmsQueueConnectionFactory">
<description>T24 Queue Connection Factory</description>
<res-ref-name>jms/jmsConnectionFactory</res-ref-name>
<res-type>javax.jms.QueueConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref id="ResourceRef_t24ConnectionFactory">
<description>T24 JCA Connection Factory</description>
<res-ref-name>jca/t24ConnectionFactory</res-ref-name>
<res-type>com.jbase.jremote.JConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref id="ResourceRef_t24OFSReplyQueue">
<description>OFS reply queue</description>
<res-ref-name>queue/t24OFSReplyQueue</res-ref-name>
<res-type>javax.jms.Queue</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</message-driven>
<message-driven id="MessageDriven_OfsMessageMDB_DLQ">
<display-name>OFSMessage Bean DLQ</display-name>
*<!----DLQ message driven bean-->*
<ejb-name>OFSMessageMDB_DLQ</ejb-name>
<ejb-class>com.temenos.ofsmessage.mdb.OFSMessageMDB</ejb-class>
<messaging-type>javax.jms.MessageListener</messaging-type>
<transaction-type>Bean</transaction-type>
<message-destination-type>javax.jms.Queue</message-destination-type>
<activation-config>
<activation-config-property>
<activation-config-property-name>acknowledgeMode</activation-config-property-name>
<activation-config-property-value>Auto-acknowledge</activation-config-property-value>
</activation-config-property>
</activation-config>
<resource-ref id="ResourceRef_jmsQueueConnectionFactory_DLQ">
<description>T24 Queue Connection Factory</description>
<res-ref-name>jms/jmsConnectionFactory</res-ref-name>
<res-type>javax.jms.QueueConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref id="ResourceRef_t24ConnectionFactory_DLQ">
<description>T24 JCA Connection Factory</description>
<res-ref-name>jca/t24ConnectionFactory</res-ref-name>
<res-type>com.jbase.jremote.JConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref id="ResourceRef_t24OFSReplyQueue_DLQ">
<description>OFS reply queue</description>
<res-ref-name>queue/t24OFSReplyQueue</res-ref-name>
<res-type>javax.jms.Queue</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</message-driven>
</enterprise-beans>
</ejb-jar>
*_Jboss.xml_*
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 4.0//EN"
"http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
<jboss>
<enterprise-beans>
<message-driven>
<ejb-name>OFSMessageMDB</ejb-name>
<destination-jndi-name>queue/t24OFSQueue</destination-jndi-name>
<resource-ref>
<res-ref-name>jms/jmsConnectionFactory</res-ref-name>
<jndi-name>java:/ConnectionFactory</jndi-name>
</resource-ref>
<resource-ref>
<res-ref-name>queue/t24OFSReplyQueue</res-ref-name>
<!-- <res-type>javax.jms.Queue</res-type>
-->
<jndi-name>queue/t24OFSReplyQueue</jndi-name>
</resource-ref>
<resource-ref>
<res-ref-name>jca/t24ConnectionFactory</res-ref-name>
<jndi-name>java:jca/t24ConnectionFactory</jndi-name>
<!--
<res-type>com.jbase.jremote.JConnectionFactory</res-type>
-->
</resource-ref>
</message-driven>
<message-driven>
<ejb-name>OFSMessageMDB_DLQ</ejb-name>
<destination-jndi-name>queue/DLQ</destination-jndi-name>
*<!---Default DL Queue Refrenece -->*
<resource-ref>
<res-ref-name>jms/jmsConnectionFactory</res-ref-name>
<jndi-name>java:/ConnectionFactory</jndi-name>
</resource-ref>
<resource-ref>
<res-ref-name>queue/t24OFSReplyQueue</res-ref-name>
<!--<res-type>javax.jms.Queue</res-type>-->
<jndi-name>queue/t24OFSReplyQueue</jndi-name>
</resource-ref>
<resource-ref>
<res-ref-name>jca/t24ConnectionFactory</res-ref-name>
<jndi-name>java:jca/t24ConnectionFactory_DLQ</jndi-name>
<!--<res-type>com.jbase.jremote.JConnectionFactory</res-type>-->
</resource-ref>
</message-driven>
</enterprise-beans>
</jboss>
Is Something missing in here because I can not see any message
redirection to DLQ. If you require any other information about my
setup please let me know. Your response and help will be appreciated.
Regards,
*--*
*Sheeraz Junejo*
Disclaimer:
If you have received this e-mail in error please notify the sender.
Please note that any views or opinions presented in this e-mail are solely
those of the author and do not necessarily represent those of TEMENOS.
We recommend that you check this e-mail and any attachments against viruses.
TEMENOS accepts no liability for any damage caused by any malicious code
or virus transmitted by this e-mail.
------------------------------------------------------------------------
_______________________________________________
jboss-development mailing list
jboss-development(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-development