FWIW I just integrated MQTT with Wildfly 11.0.0.CR1 and ran org.apache.activemq.artemis.tests.integration.mqtt.imported.MQTTTest#testSendAndReceiveMQTT against it and everything worked.
Justin On Tue, Sep 26, 2017 at 10:55 AM, Justin Bertram <jbert...@redhat.com> wrote: > The Artemis integration code for Wildfly is in the Wildfly project [1]. > > The problem you hit in Wildfly 11.0.0.CR1 looks odd to me. The > class io.netty.handler.codec.mqtt.MqttEncoder from Netty 4.1.9.Final > (which ships in Wildfly) does, in fact, contain the field "INSTANCE" so I'm > not sure why you would be getting this exception unless there was something > odd going on with the classloading or something. > > Also, the integration instructions in the WFLY-9372 JIRA say to > copy netty-codec-mqtt-5.0.0.Alpha2.jar into the > org.apache.activemq.artemis.protocol.mqtt > module, but that shouldn't be necessary in Wildfly 11.0.0.CR1 as the > io.netty module already contains those classes. I also don't see why > the org.apache.activemq.artemis.protocol.mqtt module would need > dependencies on javax.jms.api, javax.api, or org.slf4j. > > > Justin > > [1] https://github.com/wildfly/wildfly (see the "messaging-activemq" > module) > > On Tue, Sep 26, 2017 at 10:17 AM, thoutekier <thomas.houtek...@barco.com> > wrote: > >> * using artemis-1.1.0 standalone works out-of-the-box: it has by default >> support for MQTT in the config, and it works if I connect using an >> MQTT-client >> >> * using Wildfly-11.0.0.CR1: >> 2017-09-26 17:12:25,837 WARNING [io.netty.channel.DefaultChannelPipeline] >> (Thread-2 (activemq-netty-threads)) An exceptionCaught() event was fired, >> and it reached at the tail of the pipeline. It usually means the last >> handler in the pipeline did not handle the exception.: >> io.netty.handler.codec.DecoderException: java.lang.NoSuchFieldError: >> INSTANCE >> at >> io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteT >> oMessageDecoder.java:442) >> at >> io.netty.handler.codec.ByteToMessageDecoder.channelRead(Byte >> ToMessageDecoder.java:248) >> at >> org.apache.activemq.artemis.core.protocol.ProtocolHandler$Pr >> otocolDecoder.channelRead(ProtocolHandler.java:128) >> at >> io.netty.channel.AbstractChannelHandlerContext.invokeChannel >> Read(AbstractChannelHandlerContext.java:362) >> at >> io.netty.channel.AbstractChannelHandlerContext.invokeChannel >> Read(AbstractChannelHandlerContext.java:348) >> at >> io.netty.channel.AbstractChannelHandlerContext.fireChannelRe >> ad(AbstractChannelHandlerContext.java:340) >> at >> io.netty.channel.DefaultChannelPipeline$HeadContext. >> channelRead(DefaultChannelPipeline.java:1334) >> at >> io.netty.channel.AbstractChannelHandlerContext.invokeChannel >> Read(AbstractChannelHandlerContext.java:362) >> at >> io.netty.channel.AbstractChannelHandlerContext.invokeChannel >> Read(AbstractChannelHandlerContext.java:348) >> at >> io.netty.channel.DefaultChannelPipeline.fireChannelRead(Defa >> ultChannelPipeline.java:926) >> at >> io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe. >> read(AbstractNioByteChannel.java:134) >> at >> io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEven >> tLoop.java:624) >> at >> io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimiz >> ed(NioEventLoop.java:559) >> at >> io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEve >> ntLoop.java:476) >> at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:438) >> at >> io.netty.util.concurrent.SingleThreadEventExecutor$5.run( >> SingleThreadEventExecutor.java:858) >> at java.lang.Thread.run(Thread.java:745) >> Caused by: java.lang.NoSuchFieldError: INSTANCE >> at >> org.apache.activemq.artemis.core.protocol.mqtt.MQTTProtocolM >> anager.addChannelHandlers(MQTTProtocolManager.java:113) >> at >> org.apache.activemq.artemis.core.protocol.ProtocolHandler$Pr >> otocolDecoder.decode(ProtocolHandler.java:181) >> at >> io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteT >> oMessageDecoder.java:411) >> ... 16 more >> >> >> So it seems that it is in fact a problem in Wildfly. >> Any idea where I could find the code for the artemis-integration in >> wildly? >> I don't find any branch/tag on >> https://github.com/apache/activemq-artemis/tree/1.x/artemis- >> protocols/artemis-mqtt-protocol >> for "artemis-mqtt-protocol-1.1.0.wildfly-017" >> >> >> >> >> >> -- >> Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805 >> .html >> > >