到目前为止,我在TomEE中使用默认的ActiveMQ配置。现在,我想打开调度程序支持,因此将这些内容添加到tomee.xml中:

<Resource id="MyJmsResourceAdapter" type="ActiveMQResourceAdapter">
    BrokerXmlConfig = broker:(tcp://127.0.0.1:61616)?usekahadb=true&amp;persistent=true&amp;schedulerSupport=true
</Resource>

<Resource id="MyJmsConnectionFactory" type="javax.jms.ConnectionFactory">
    ResourceAdapter = MyJmsResourceAdapter
</Resource>


但是我收到这些错误消息:


  数据库activemq-data / localhost / scheduler / lock已锁定...正在等待
  10秒后数据库将被解锁。原因:
  java.io.IOException:无法创建目录
  'activemq-data / localhost / scheduler'


谁能帮我该怎么办?可惜我发现的有关在TomEE中配置ActiveMQ的每个文档都很糟糕,而且我无法弄清楚如何在TomEE中打开调度程序支持。

最佳答案

问题在于,TomEE中ActiveMQ的基本目录是TomEE的bin文件夹,而且TomEE无法写入该目录,因此TomEE无法为KahaDB创建文件夹。使bin对tomee过程可写可解决此问题。

ActiveMQ创建必要的文件夹后,出于安全原因,我已将bin文件夹的权限更改回原始状态。

关于java - 无法在TomEE中配置自定义ActiveMQ代理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31190176/

10-10 16:33