首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javax.naming.NameNotFoundException: jboss/exampleApp/SampleQueueIn

javax.naming.NameNotFoundException: jboss/exampleApp/SampleQueueIn
EN

Stack Overflow用户
提问于 2020-12-03 09:52:26
回答 1查看 559关注 0票数 0

我们正在从JBoss EAP6.4迁移到JBoss EAP7.0。我们以前的JMS配置没有使用JMS7.0,因为它正在为我的JBoss bean抛出NameNotFoundException

我的jms.xml

代码语言:javascript
复制
<beans profile="jboss">
    <bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
      <property name="jndiName" value="java:jboss/jms/exampleApp/ConnectionFactory" />
      <property name="resourceRef" value="true" />
    </bean>

    <bean id="SampleQueueIn" class="org.springframework.jndi.JndiObjectFactoryBean">
      <property name="jndiName" value="java:jboss/jms/exampleApp/SampleQueueIn" />
      <property name="resourceRef" value="true" />
    </bean>

  </beans>

我的messageListener.xml

代码语言:javascript
复制
<beans profile="jboss">
    <!-- Abstract MessageListener -->
    <bean id="messageListener" abstract="true" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
      <property name="connectionFactory" ref="connectionFactory" />
      <property name="transactionManager" ref="transactionManager" />
      <property name="sessionTransacted" value="true" />
      <!-- Receive timeout determines the duration of JMS session. Increase from default 1sec to 5sec, to lower the traffic to Queue managers -->
      <property name="receiveTimeout" value="5000" />
    </bean>

  </beans>

我的代理域componentContext.xml,它有侦听器bean

代码语言:javascript
复制
  <beans profile="jboss">
     <bean id="jmsContainer" parent="messageListener">
      <property name="destination" ref="SampleQueueIn" />
      <property name="messageListener" ref="sampleInformationListenerImpl" />
    </bean> 
  </beans>

用于为wmq添加管理对象的commands.cli部件

代码语言:javascript
复制
/subsystem=resource-adapters/resource-adapter=${wmq_deploy_name}:activate
    /subsystem=resource-adapters/resource-adapter=${wmq_deploy_name}/admin-objects=SampleQueueIn:add(class-name=com.ibm.mq.connector.outbound.MQQueueProxy,jndi-name=java:jboss/jms/exampleApp/SampleQueueIn)
    /subsystem=resource-adapters/resource-adapter=${wmq_deploy_name}/admin-objects=SampleQueueIn/config-properties=baseQueueName/:add(value=${filter_jms_queue_config_SampleQueueIn_basequeuename})
    /subsystem=resource-adapters/resource-adapter=${wmq_deploy_name}/admin-objects=SampleQueueIn/config-properties=baseQueueManagerName/:add(value=${filter_jms_queue_config_basequeuemanager})

我还可以在带有正确jndi名称的子资源下面的wmq的JBoss中看到我的管理对象。

我正在使用IBM v9.1.0.2。

一旦部署了WAR文件,我就会得到以下异常

创建类路径资源中定义的名称为“org.springframework.beans.factory.BeanCreationException:”的bean引起的

错误: init方法调用失败;嵌套的异常是javax.naming.NameNotFoundException: jms/exampleApp/SampleQueueIn- service jboss.naming.context.java.jboss.jms.exampleApp.SampleQueueIn

此配置在jboss 6.4中工作(仍在工作)。

我已经鞭打了jboss站点和堆栈溢出站点,但是到目前为止都没有用!

我看得出来我的

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-07 08:44:19

在运行CLI命令后,我通过重新加载JBoss服务器解决了错误。我自动化了两个jboss命令& reload命令的执行,以确保JNDI对象查找成功。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65123540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档