JBoss:将JMS资源添加到JBoss 4.3

时间:2009-09-02 16:02:48

标签: jboss jms

我无法理解在JBoss中定义JMS队列实现所需的JMS资源的位置。目前我正在处理的代码适用于WebLogic,我正在尝试将其迁移到JBoss 4.3 eap。

在weblogic中,有一个jms.xml文件,用于定义JMS资源和JNDI查找名称。例如:

<quota name="CacheT.Quota">
  <bytes-maximum>9999999999999999999</bytes-maximum>
  <messages-maximum>9999999999999999999</messages-maximum>
  <policy>FIFO</policy>
  <shared>false</shared>
</quota>
<template name="MessQ">
  <delivery-failure-params>
    <redelivery-limit>1</redelivery-limit>
    <expiration-policy>Discard</expiration-policy>
  </delivery-failure-params>
</template>
<connection-factory name="Queue Conn Fact">
  <default-targeting-enabled>true</default-targeting-enabled>
  <jndi-name>com.company.QueueConnFact</jndi-name>
  <default-delivery-params>
    <default-delivery-mode>Persistent</default-delivery-mode>
  </default-delivery-params>
  <transaction-params>
    <xa-connection-factory-enabled>false</xa-connection-factory-enabled>
  </transaction-params>
  <security-params>
    <attach-jmsx-user-id>false</attach-jmsx-user-id>
  </security-params>
</connection-factory>
<queue name="EMessQ">
  <sub-deployment-name>Product_JMS</sub-deployment-name>
  <template>MessQ</template>
  <jndi-name>com.company.EMessQ</jndi-name>
</queue>
<uniform-distributed-topic name="CacheT">
  <sub-deployment-name>Product_JMS</sub-deployment-name>
  <jndi-name>com.company.CacheT</jndi-name>
  <load-balancing-policy>Round-Robin</load-balancing-policy>
</uniform-distributed-topic>

对于我的生活,我似乎不明白在JBoss中定义这些资源的位置。在查看the JBoss Community Wiki之后,没有回答任何问题。请记住,我是整个JMS的新手,对JBoss来说相对较新。我确实找到了这个link,但这似乎讨论了JBossMessaging,据我所知,这是一个新的JMS实现,它在JBoss 5版本中,而不是4.3版本。

我们的应用程序部署为EAR文件,其中包含WAR和公共库JAR。有些further googling建议我必须将这些定义添加到每个jboss.xml中,我希望避免这样做。

基本上,我很困惑。我正在尝试在进行这些更改时学习JMS,但我似乎无法弄清楚这一部分。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

实际上,EAP 4.3 does use JBoss Messaging,而不是您的链接引用的2.0版本。你需要documentation for version 1.4.0