首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JBoss融合7.4与外部活动MQ提供AMQ219013:超时等待接收集群拓扑。组:空

JBoss融合7.4与外部活动MQ提供AMQ219013:超时等待接收集群拓扑。组:空
EN

Stack Overflow用户
提问于 2020-02-16 09:49:57
回答 2查看 2.7K关注 0票数 2

我正在尝试连接到(fuse-karaf-7.4.0.fuse-740028-redhat-00001). FUSE 7.4 ActiveMQ message broker我找到了下面的例子

我已经下载并安装了相关的功能,在项目中指示。此外,我还下载并安装了ActiveMQ 5.15.11,并创建了incomingOrders队列。

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

代码语言:javascript
复制
url      = tcp://LAPTOP-E0A1RCAN:61616?maximumConnections=1000&wireFormat.maxFrameSize=10485760
name     = activemq
type     = artemis
user     = admin
password = admin

之后,当我安装应用程序时,我会得到以下错误。

代码语言:javascript
复制
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日志中,我可以看到下面的警告。

代码语言:javascript
复制
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

是否有类似的问题连接到ActiveMQ与FUSE 7.4或7.1+?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-29 06:22:04

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

代码语言:javascript
复制
    <feature>camel-jms</feature>
    <feature>camel-activemq</feature>
    <feature>pax-jms-activemq</feature>

然后,您必须在项目ActiveMQ中定义blueprint.xml端点。确保这里的细节是正确的。

代码语言:javascript
复制
  <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">

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

  </bean>

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

代码语言:javascript
复制
<from uri="activemq:queue:inbound.queue"/>

有关如何在Fuse 7.4中配置ActiveMQ的更详细说明,请参阅下面的博客。

https://nirmalbalasooriya.blogspot.com/2020/02/external-active-mq-hibernate-with-jboss.html

票数 1
EN

Stack Overflow用户

发布于 2020-02-16 14:39:28

链接示例的“总结”说:

这个快速启动演示了如何使用camel-jms组件连接到AMQ 7 broker,以及如何在两个骆驼路由之间使用JMS。重点增加

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

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

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

https://stackoverflow.com/questions/60247260

复制
相关文章

相似问题

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