我在servlet中启动了spring 的jms监听类后就会告诉我找不到属性文件,
1.属性文件存在
2.不配置监听不会有错
3.启动方式
context = ObjectRegistry.getApplicationContext();
DefaultMessageListenerContainer container = (DefaultMessageListenerContainer)context.getBean("ListenerContainer");
报如下错误:
No properties path set - looking for transactions.properties in classpath...
transactions.properties not found - looking for jta.properties in classpath...
一直不知道为何?把servlet的启动设为500也是一样

解决方案 »

  1.   

    DefaultMessageListenerContainer container = (DefaultMessageListenerContainer)context.getBean("ListenerContainer"); 
    这里居然会找不到jta属性文件?
      

  2.   

    而且监听时不定时的报提交事务错误,
    16:53:00,486  WARN atomikos:78 - XA resource 'demo_MQSeries_XA_RMI': commit for XID '31302E302E342E3136382E746D30343737303030303434:31302E302E342E3136382E746D34363932' raised -6: the XA resource did not expect this command in the current context
    javax.transaction.xa.XAException: XA 操作失败,请参阅错误代码
    at com.ibm.mq.MQXAResource.commit(MQXAResource.java:327)
    at com.atomikos.datasource.xa.XAResourceTransaction.commit(XAResourceTransaction.java:957)
    at com.atomikos.icatch.imp.CommitMessage.send(CommitMessage.java:94)
    at com.atomikos.icatch.imp.PropagationMessage.submit(PropagationMessage.java:86)
    at com.atomikos.icatch.imp.Propagator$PropagatorThread.run(Propagator.java:62)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
      

  3.   

    很奇怪我把启动放在类的main方法里启动就不报XA resource 'demo_MQSeries_XA_RMI': commit for XID 
    而放在web里用servlet启动就会报错,难道容器间事务冲突?