1

我在 JBoss EAP 6 上,我的任务是将服务器迁移到云端。

我让 JBoss 启动,但随后一些队列失败:

     [echo] try to connect to local JBoss...
Checking for listener at 127.0.0.1:17545
Checking for listener at 127.0.0.1:17545
waitfor: condition was met
Property "jboss.not.started" has not been set
     [echo] ...connection is available.
  [antcall] Exiting /app/project/app/jboss-6.4-inst1/pi-deploy/tools/extension/configure.xml.
     [echo] env.JBOSS_HOME=/opt/inet/jboss-6.4
     [java] Executing '/opt/dbsinfra/zst/jdk-1.8.0_161/jre/bin/java' with arguments:
     [java] '-jar'
     [java] '/opt/inet/jboss-6.4/jboss-modules.jar'
     [java] '-mp'
     [java] '/opt/inet/jboss-6.4/modules'
     [java] 'org.jboss.as.cli'
     [java] '--file=/app/project/app/jboss-6.4-inst1/pi-deploy/../bin/configure.cli'
     [java]
     [java] The ' characters around the executable and arguments are
     [java] not part of the command.
     [java] INFO  [org.jboss.modules] JBoss Modules version 1.3.10.Final-redhat-1
     [java] INFO  [org.xnio] XNIO Version 3.0.16.GA-redhat-1
     [java] INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.16.GA-redhat-1
     [java] INFO  [org.jboss.remoting] JBoss Remoting version 3.3.12.Final-redhat-2
     [java] INFO  [org.jboss.as.cli.CommandContext] The batch executed successfully
     [java] The batch executed successfully
     [java] ERROR [org.jboss.as.cli.CommandContext] 'queue-address' is not found among the supported properties: [selector, entries, durable]
     [java] 'queue-address' is not found among the supported properties: [selector, entries, durable]

您可以看到通过命令行界面 (CLI) 配置了服务器:

     [java] '--file=/app/project/app/jboss-6.4-inst1/pi-deploy/../bin/configure.cli'

configure.cli 脚本的违规部分是:

#######################################################################
#
# JMS Queues
# 
#######################################################################
# JMS Queue for business events

/subsystem=messaging:add()

/subsystem=messaging/hornetq-server=default:add()

/subsystem=messaging/hornetq-server=default/jms-queue=BusinessEventQueue:add(\
  entries=["/queue/BusinessEventQueue"],\
  queue-address="jms.queue.BusinessEventQueue"\                  <------ HERE
)

/subsystem=messaging/hornetq-server=default/in-vm-connector=in-vm:add(server-id="0")
/subsystem=messaging/hornetq-server=default/in-vm-acceptor=in-vm:add(server-id="0")
/subsystem=messaging/hornetq-server=default/pooled-connection-factory=InVmJMSConnectionFactory:add(\
  entries=["java:/InVmJMSConnectionFactory"],\
  connector={"in-vm" => undefined}\
)

/subsystem=ejb3:write-attribute(name="default-resource-adapter-name", value="InVmJMSConnectionFactory")
/subsystem=ejb3:write-attribute(name=default-mdb-instance-pool, value="mdb-strict-max-pool")

我不明白的是:

我们正在从 JBoss EAP 6.4 迁移到 JBoss EAP 6.4,旧的/以前的服务器运行正常。

我从来没有接触过任何类似 JMS 的东西......

问题

这是什么queue-address="jms.queue.BusinessEventQueue"?这是某种名称吗?

你怎么可能解决这个问题?-> 用名称参数替换?

谢谢

PS:情况有点复杂,因为我不能只更改本地文件。这些文件是从 SVN 存储库中提取的,因此任何尝试都涉及提交......等等。

4

1 回答 1

1

您不能将queue-address用作 JMS-Queue “添加”操作的属性。因为它不是受支持的操作。试试下面的命令它应该可以工作。

/subsystem=messaging/hornetq-server=default/jms-queue=BusinessEventQueue:add(\

条目=["/queue/BusinessEventQueue"])

创建新 JMS 队列时,队列地址默认设置为jms.queue.BusinessEventQueue"。您可以使用以下 CLI 命令检查该值。

/subsystem=messaging/hornetq-server=default/jms-queue=BusinessEventQueue:read-attribute(name=queue-address)

如果您在添加新的 JMS 队列时使用了队列地址,您将使用如下所示的内容。

jms-queue add --queue-address=BusinessEventQueue --entries=/queue/BusinessEventQueue 

jms.queue默认会被添加,不需要传递那部分。

于 2018-07-30T06:29:16.247 回答