Java Camel Netty4 udp多播无法在windows上工作
我一直在尝试让Camel Netty4 udp多播在windows上工作,NettyudpMulticastSyncTest似乎失败了,出现了java.nio.channels.ClosedChannelException。 同样的测试似乎也在OSX上进行。这两台机器都运行Java1.7 我已经在测试中更新了接口名称,并且能够在同一接口上运行NIO UDP多播示例。 我正在使用Camel 2.14.1,但它似乎在2.15.x上也不起作用 堆栈跟踪在下面Java Camel Netty4 udp多播无法在windows上工作,java,apache-camel,netty,Java,Apache Camel,Netty,我一直在尝试让Camel Netty4 udp多播在windows上工作,NettyudpMulticastSyncTest似乎失败了,出现了java.nio.channels.ClosedChannelException。 同样的测试似乎也在OSX上进行。这两台机器都运行Java1.7 我已经在测试中更新了接口名称,并且能够在同一接口上运行NIO UDP多播示例。 我正在使用Camel 2.14.1,但它似乎在2.15.x上也不起作用 堆栈跟踪在下面 Tests run: 1, Failure
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.026 sec <<< FAILURE! - in org.apache.camel.component.netty4.NettyUDPMulticastAsyncTest
testUDPInOnlyMulticastWithNettyConsumer(org.apache.camel.component.netty4.NettyUDPMulticastAsyncTest) Time elapsed: 0.023 sec <<< ERROR!
java.nio.channels.ClosedChannelException: null
at sun.nio.ch.DatagramChannelImpl.innerJoin(DatagramChannelImpl.java:832)
at sun.nio.ch.DatagramChannelImpl.join(DatagramChannelImpl.java:894)
at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:409)
at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:382)
at io.netty.channel.socket.nio.NioDatagramChannel.joinGroup(NioDatagramChannel.java:375)
at org.apache.camel.component.netty4.SingleUDPNettyServerBootstrapFactory.startServerBootstrap(SingleUDPNettyServerBootstrapFactory.java:177)
at org.apache.camel.component.netty4.SingleUDPNettyServerBootstrapFactory.doStart(SingleUDPNettyServerBootstrapFactory.java:97)
at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
at org.apache.camel.component.netty4.NettyConsumer.doStart(NettyConsumer.java:69)
测试运行:1,失败:0,错误:1,跳过:0,经过的时间:0.026秒在加入组之前发现绑定到多播地址时出现问题,由于某种原因,这在windows上不起作用。必须更新bootstrap.bind,使其在SingleUDPNettyServerBootstrapFactory中看起来像这样
ChannelFuture=bootstrap.bind(新的InetSocketAddress(configuration.getPort())
检查windows防火墙是否未阻止请求防火墙已关闭,我可以从同一系统的不同应用程序加入多播组。