java – 在JBoss EAP 6.2.0中通过JNDI访问HornetQ连接工厂(本地)
发布时间:2020-12-15 04:20:06 所属栏目:Java 来源:网络整理
导读:我在JBoss中部署了一个Web应用程序(jms-api.war),我希望通过它从JNDI获得一个JMS连接工厂,是否可以不进行任何配置( like this)?我尝试使用没有任何配置的JNDI: 我在standalone.xml中的连接工厂: jms-connection-factories connection-factory name="InVmC
我在JBoss中部署了一个Web应用程序(jms-api.war),我希望通过它从JNDI获得一个JMS连接工厂,是否可以不进行任何配置(
like this)?我尝试使用没有任何配置的JNDI:
我在standalone.xml中的连接工厂: <jms-connection-factories> <connection-factory name="InVmConnectionFactory"> <connectors> <connector-ref connector-name="in-vm"/> </connectors> <entries> <entry name="java:/ConnectionFactory"/> </entries> </connection-factory> </jms-connection-factories> 在我的应用程序中,我有这个spring bean来访问连接工厂(它在我的嵌入式hornetq测试中工作): <bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="/ConnectionFactory" /> <property name="resourceRef" value="true"/> </bean> 在jboss启动中我得到了这个错误,我该如何解决呢?: JBAS014775: New missing/unsatisfied dependencies: service jboss.naming.context.java.jboss.resources.jms.ConnectionFactory (missing) dependents: [service jboss.naming.context.java.module.jms-api.jms-api.env.jms.ConnectionFactory] Jboss日志(hornetq开始部分): 11:00:32,689 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221000: live server is starting with configuration HornetQ Configuration (clustered=false,backup=false,sharedStore=true,journalDirectory=C:UsersMojtabaworkspace-hornetqbuildappserverjbossstandalonedata../../../hornetqdata/journal,bindingsDirectory=C:UsersMojtabaworkspace-hornetqbuildappserverjbossstandalonedata../../../hornetqdata/bindings,largeMessagesDirectory=C:UsersMojtabaworkspace-hornetqbuildappserverjbossstandalonedata../../../hornetqdata/large-message,pagingDirectory=C:UsersMojtabaworkspace-hornetqbuildappserverjbossstandalonedata../../../hornetqdata/paging) 11:00:32,691 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221006: Waiting to obtain live lock 11:00:32,723 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221013: Using NIO Journal 11:00:32,840 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221034: Waiting to obtain live lock 11:00:32,841 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221035: Live Server Obtained live lock 11:00:33,041 INFO [org.jboss.as.remoting] (MSC service thread 1-1) JBAS017100: Listening on 127.0.0.1:9999 11:00:33,777 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221020: Started Netty Acceptor version 3.6.6.Final-redhat-1-fd3c6b7 0.0.0.0:5445 for CORE protocol 11:00:33,779 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221007: Server is now live 11:00:33,780 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 50) HQ221001: HornetQ Server version 2.3.12.Final (2.3.12,123) [c0d4ec44-d8d5-11e3-afd6-5372513ac770] 11:00:33,786 INFO [org.hornetq.jms.server] (ServerService Thread Pool -- 50) HQ121005: Invalid "host" value "0.0.0.0" detected for "netty" connector. Switching to "Mojtaba-PC". If this new address is incorrect please manually configure the connector to use the proper one. 11:00:33,811 INFO [org.jboss.as.messaging] (ServerService Thread Pool -- 50) JBAS011601: Bound messaging object to jndi name java:jboss/exported/jms/RemoteConnectionFactory 11:00:33,812 INFO [org.jboss.as.messaging] (ServerService Thread Pool -- 50) JBAS011601: Bound messaging object to jndi name java:/RemoteConnectionFactory 11:00:33,815 INFO [org.jboss.as.messaging] (ServerService Thread Pool -- 52) JBAS011601: Bound messaging object to jndi name java:/ConnectionFactory 11:00:33,816 INFO [org.hornetq.core.server] (ServerService Thread Pool -- 51) HQ221003: trying to deploy queue jms.queue.testQueue 11:00:34,115 INFO [org.jboss.as.messaging] (ServerService Thread Pool -- 51) JBAS011601: Bound messaging object to jndi name java:/queue/testQueue 11:00:34,116 INFO [org.jboss.as.messaging] (ServerService Thread Pool -- 51) JBAS011601: Bound messaging object to jndi name java:jboss/exported/queues/testQueue 11:00:34,195 INFO [org.jboss.as.server] (ServerService Thread Pool -- 27) JBAS018559: Deployed "jms-api.war" (runtime-name : "jms-api.war") 11:00:34,199 INFO [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status report JBAS014775: New missing/unsatisfied dependencies: service jboss.naming.context.java.jboss.resources.jms.ConnectionFactory (missing) dependents: [service jboss.naming.context.java.module.jms-api.jms-api.env.jms.ConnectionFactory] (jboss eap 6.2.0,hornetq 2.3.12.Final) 解决方法
虽然我还没有使用v6.2,但你可以试试这个.该错误无法通过JNDI树找到您的连接工厂.因此,请在已列出的条目中添加以下内容:
<entries> <entry name="java:/ConnectionFactory"/> <!-- Add this --> <entry name="java:jboss/exported/ConnectionFactory"/> </entries> 并将连接器ref从in-vm更改为netty (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |