我目前正在做一个使用cometd 1.0.0和jetty 8.1.11的项目。
我得到了以下异常:WARN:oejut.Timeout:EXCEPTION java.lang.NoSuchMethodError: org.eclipse.jetty.util.LazyList.removeFromArray([Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; at org.cometd.server.ClientImpl.removeSubscription(ClientImpl.java:495) at org.cometd.server.ChannelImpl.unsubscribe(ChannelImpl.java:339) at org.cometd.server.ClientImpl.unsubscribeAll(ClientImpl.java:527) at org.cometd.server.AbstractBayeux.removeClient(AbstractBayeux.java:526) at org.cometd.server.ClientImpl.remove(ClientImpl.java:370) at org.cometd.server.continuation.ContinuationClient.remove(ContinuationClient.java:220) at org.cometd.server.continuation.ContinuationClient$1.expired(ContinuationClient.java:60) at org.eclipse.jetty.util.thread.Timeout.tick(Timeout.java:140) at org.eclipse.jetty.util.thread.Timeout.tick(Timeout.java:153) at org.cometd.server.continuation.ContinuationBayeux$1.run(ContinuationBayeux.java:76) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462)
当我更新cometd到1.1.5版本时,我再也看不到这个错误了。但是在负载测试中,我的jetty的cpu使用率非常高。
有没有人能推荐一个与jetty 8.1.11兼容的稳定版本的cometd?
发布于 2013-11-21 21:37:55
不再维护CometD 1.x;CometD 2.x自2010年7月起发布。
我强烈建议你升级到Jetty2.x(当前版本的2.7.0),虽然我建议你使用最新的Jetty8(目前是8.1.14.v20131031 ),但它在每个CometD 8版本上都可以很好地工作。
发布于 2013-11-21 21:19:00
从Maven Central上的信息可以看出,cometd第一次使用Jetty8时,它首先出现在the metadata for Cometd 2.7.0中。
但是,它列出了版本8.1.13.v20130916作为它自己使用的版本,而不是版本8.1.11。
为了完整起见,这里是,注意它没有jetty8引用。
https://stackoverflow.com/questions/20119401
复制相似问题