Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JBoss FUSE 7.4和外部活动MQ提供AMQ219013:等待接收群集拓扑时超时。组:空_Java_Activemq_Jbossfuse - Fatal编程技术网

Java JBoss FUSE 7.4和外部活动MQ提供AMQ219013:等待接收群集拓扑时超时。组:空

Java JBoss FUSE 7.4和外部活动MQ提供AMQ219013:等待接收群集拓扑时超时。组:空,java,activemq,jbossfuse,Java,Activemq,Jbossfuse,我正在尝试连接JBoss FUSE 7.4上的ActiveMQ message broker(FUSE-karaf-7.4.0.FUSE-740028-redhat-00001)。我找到了那个 我已经按照项目中的说明下载并安装了相关功能。我还下载并安装了ActiveMQ 5.15.11,并创建了incomingOrders队列 我已将org.ops4j.connectionfactory-amq7.cfg配置文件添加到FUSE_HOME/etc文件夹中,其中包含我的本地用户名和密码,如下所示:

我正在尝试连接JBoss FUSE 7.4上的ActiveMQ message broker(FUSE-karaf-7.4.0.FUSE-740028-redhat-00001)。我找到了那个

我已经按照项目中的说明下载并安装了相关功能。我还下载并安装了ActiveMQ 5.15.11,并创建了
incomingOrders
队列

我已将
org.ops4j.connectionfactory-amq7.cfg
配置文件添加到
FUSE_HOME/etc
文件夹中,其中包含我的本地用户名和密码,如下所示:

url      = tcp://LAPTOP-E0A1RCAN:61616?maximumConnections=1000&wireFormat.maxFrameSize=10485760
name     = activemq
type     = artemis
user     = admin
password = admin
之后,当我安装应用程序时,我得到以下错误

java.lang.IllegalArgumentException: AMQ219032: Invalid type: 1
    at org.apache.activemq.artemis.core.protocol.core.impl.PacketDecoder.decode(PacketDecoder.java:475) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.ClientPacketDecoder.decode(ClientPacketDecoder.java:67) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.ClientPacketDecoder.decode(ClientPacketDecoder.java:42) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:376) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl$DelegatingBufferHandler.bufferReceived(ClientSessionFactoryImpl.java:1191) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:73) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323) [239:io.netty.codec:4.1.34.Final-redhat-00001]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:297) [239:io.netty.codec:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1408) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:677) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:612) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:529) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:491) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [241:io.netty.common:4.1.34.Final-redhat-00001]
    at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
2020-02-16 17:41:34,755 | ERROR | lient-netty-threads) | o.a.a.a.c.client                 | 248 - org.apache.activemq.artemis-jms-client-osgi - 2.7.0.redhat-00056 | AMQ214031: Failed to decode buffer, disconnect immediately.
java.lang.IllegalStateException: java.lang.IllegalArgumentException: AMQ219032: Invalid type: 1
    at org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:389) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl$DelegatingBufferHandler.bufferReceived(ClientSessionFactoryImpl.java:1191) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:73) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323) [239:io.netty.codec:4.1.34.Final-redhat-00001]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:297) [239:io.netty.codec:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1408) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:677) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:612) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:529) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:491) [244:io.netty.transport:4.1.34.Final-redhat-00001]
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905) [241:io.netty.common:4.1.34.Final-redhat-00001]
    at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
Caused by: java.lang.IllegalArgumentException: AMQ219032: Invalid type: 1
    at org.apache.activemq.artemis.core.protocol.core.impl.PacketDecoder.decode(PacketDecoder.java:475) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.ClientPacketDecoder.decode(ClientPacketDecoder.java:67) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.ClientPacketDecoder.decode(ClientPacketDecoder.java:42) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    at org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:376) ~[248:org.apache.activemq.artemis-jms-client-osgi:2.7.0.redhat-00056]
    ... 21 more
在ActiveMQ日志中,我可以看到以下警告

2020-02-16 17:44:29,802 | WARN  | Transport Connection to: tcp://127.0.0.1:51000 failed: java.io.IOException: Frame size of 1 GB larger than max allowed 100 MB | org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ Transport: tcp:///127.0.0.1:51000@61616
是否有人在使用FUSE 7.4或7.1+连接ActiveMQ时遇到类似问题?

中的“摘要”说明:

此快速入门演示了如何使用camel jms组件连接到AMQ 7代理,并在两个camel路由之间使用jms消息传递。[重点补充]

AMQ 7基于,而不是ActiveMQ 5.x(您正在使用)。ActiveMQ 5.x不支持Artemis JMS客户端实现所说的“核心”协议


因此,您应该更改Camel配置以使用ActiveMQ 5.x OpenWire JMS客户端实现,或者使用ActiveMQ Artemis替换ActiveMQ 5.15.11实例。

如该示例中所述,它与JBossFUSE 7.4不兼容。 在您的情况下,您必须安装以下功能

    <feature>camel-jms</feature>
    <feature>camel-activemq</feature>
    <feature>pax-jms-activemq</feature>
骆驼jms camel-activemq pax-jms-activemq 然后,您必须在projectblueprint.xml中定义ActiveMQ端点。请确保此处的详细信息正确无误

  <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">

   <property name="brokerURL" value="tcp://localhost:61616"/>

  </bean>

然后您可以阅读或直接进入队列。下面一行显示如何读取队列“inbound.queue”


有关如何在Fuse7.4中配置ActiveMQ的更多详细说明,请参阅以下博客

<from uri="activemq:queue:inbound.queue"/>