2013-11-21 9 views
0

В настоящее время я работаю над проектом с использованием cometd 1.0.0 и причала 8.1.11.Cometd Совместимость с причалом 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, я не могу видеть эту ошибку больше. но мое использование процессора для причала довольно велико при тестировании нагрузки.

Может кто-нибудь предложить стабильную версию кометы, совместимую с причалом 8.1.11.

ответ

2

Глядя на информацию о Maven Central, кажется, что в первый раз Jetty8 используется самой кометой, сначала появляется в the metadata for Cometd 2.7.0.

Однако он содержит версию 8.1.13.v20130916 как тот, который он использует сам, а не версию 8.1.11.

Для полного удовлетворения, вот the metadata for Cometd 2.6.0, обратите внимание, что он не имеет ссылки на jetty8.

+0

Спасибо, Итак, вы имеете в виду, что я должен перейти на ** jetty 8.1.13.v20130916 ** и ** cometd 2.7.0 **, а как другие версии могут вызвать проблемы совместимости? – gusainhimanshu

3

CometD 1.x больше не поддерживается; CometD 2.x отсутствует с июля 2010 года.

Я настоятельно рекомендую вам перейти на CometD 2.x (текущая версия 2.7.0), которая будет отлично работать с каждой версией Jetty 8, хотя я рекомендую вам использовать новейший Jetty 8, в настоящее время 8.1.14.v20131031.

+0

спасибо, я согласен, что я должен обновиться до последней версии, но на данный момент мне нужно временное решение, так как я планирую перейти на причал 9 и cometd 3 и ждать сборки кометы 3. – gusainhimanshu