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( > ByteToMessageDecoder.java:442) > at > io.netty.handler.codec.ByteToMessageDecoder.channelRead( > ByteToMessageDecoder.java:248) > at > org.apache.activemq.artemis.core.protocol.ProtocolHandler$ > ProtocolDecoder.channelRead(ProtocolHandler.java:128) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead( > AbstractChannelHandlerContext.java:362) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead( > AbstractChannelHandlerContext.java:348) > at > io.netty.channel.AbstractChannelHandlerContext.fireChannelRead( > AbstractChannelHandlerContext.java:340) > at > io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead( > DefaultChannelPipeline.java:1334) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead( > AbstractChannelHandlerContext.java:362) > at > io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead( > AbstractChannelHandlerContext.java:348) > at > io.netty.channel.DefaultChannelPipeline.fireChannelRead( > DefaultChannelPipeline.java:926) > at > io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read( > AbstractNioByteChannel.java:134) > at > io.netty.channel.nio.NioEventLoop.processSelectedKey( > NioEventLoop.java:624) > at > io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized( > NioEventLoop.java:559) > at > io.netty.channel.nio.NioEventLoop.processSelectedKeys( > NioEventLoop.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.MQTTProtocolManager. > addChannelHandlers(MQTTProtocolManager.java:113) > at > org.apache.activemq.artemis.core.protocol.ProtocolHandler$ > ProtocolDecoder.decode(ProtocolHandler.java:181) > at > io.netty.handler.codec.ByteToMessageDecoder.callDecode( > ByteToMessageDecoder.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 >