【发布时间】:2011-03-11 20:39:47
【问题描述】:
我目前正在尝试将我的 Java EE 5 应用程序从 Jboss 6 M2“移植”到 Glassfish 3.0.1
由于 -service.xml 文件,Jboss 用于在部署时创建我的 JMS 目标队列。我真的很喜欢这个功能,我想找到一种方法在 Glassfish 上做同样的事情。这甚至可能吗?
【问题讨论】:
我目前正在尝试将我的 Java EE 5 应用程序从 Jboss 6 M2“移植”到 Glassfish 3.0.1
由于 -service.xml 文件,Jboss 用于在部署时创建我的 JMS 目标队列。我真的很喜欢这个功能,我想找到一种方法在 Glassfish 上做同样的事情。这甚至可能吗?
【问题讨论】:
我不确定 GlassFish 3.0.1 的确切状态,但根据这些线程:
不支持在部署时创建 JMS 目标。但是这些线程已经很老了,事情可能已经改变了(见下文)。
您可以在 sun-resources.xml 文件中声明它们并将其传递给 asadmin add-resources command。
话虽如此,一些文档(如 this one 或 this one)提到了在应用程序中捆绑的 sun-resources.xml 中定义的 application-scoped-resources 的部署(这将成为 @ 987654326@) 作为应用程序部署/取消部署的一部分,但是:
【讨论】:
使用 glassfish v4x,可以在 glassfish/domains/your-domain-name 下的 domain.xml 文件中配置连接工厂和目标(即队列和主题)
<resources>
<connector-connection-pool resource-adapter-name="jmsra" max-pool-size="250" steady-pool-size="1" name="jms/DurableConnectionFactory-Connection-Pool" description="connection factory for durable subscriptions" connection-definition-name="javax.jms.ConnectionFactory">
<property name="ClientId" description="MyID" value="MyID"></property>
</connector-connection-pool>
<connector-resource pool-name="jms/DurableConnectionFactory-Connection-Pool" description="connection factory for durable subscriptions" jndi-name="jms/DurableConnectionFactory"></connector-resource>
<admin-object-resource res-adapter="jmsra" description="PhysicalQueue" res-type="javax.jms.Queue" jndi-name="jms/MyQueue">
<property name="Name" value="PhysicalQueue">
</property>
</admin-object-resource>
</resources>
【讨论】: