2017-02-21 52 views
0

Я выиграл функциональность websocket до проекта gwt 2.6.1. Я следил за инструкциями. К сожалению я получаю сообщение об ошибке:Не удалось запустить проект после добавления атмосферы: (AtmosphereFrameworkInitializer.java:52)

[WARN] FAILED AtmosphereServlet: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 

StackTrace:

Starting Jetty on port 8888 
    [WARN] FAILED AtmosphereServlet: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
    at org.atmosphere.cpr.AtmosphereFrameworkInitializer.configureFramework(AtmosphereFrameworkInitializer.java:52) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:84) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:80) 
    at org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:75) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:534) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:346) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:786) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:541) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.handler.RequestLogHandler.doStart(RequestLogHandler.java:162) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:282) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:740) 
    at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:522) 
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1104) 
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844) 
    at com.google.gwt.dev.DevMode.main(DevMode.java:322) 
    [WARN] FAILED c.g.g.d.s.j.WebAppContextWithReload{/,file:/C:/Mars/workspace/FenixWAR/src/main/webapp/},C:\Mars\workspace\FenixWAR\src\main\webapp: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
    at org.atmosphere.cpr.AtmosphereFrameworkInitializer.configureFramework(AtmosphereFrameworkInitializer.java:52) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:84) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:80) 
    at org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:75) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:534) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:346) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:786) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:541) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.handler.RequestLogHandler.doStart(RequestLogHandler.java:162) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:282) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:740) 
    at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:522) 
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1104) 
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844) 
    at com.google.gwt.dev.DevMode.main(DevMode.java:322) 
    [WARN] FAILED [email protected]: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
    at org.atmosphere.cpr.AtmosphereFrameworkInitializer.configureFramework(AtmosphereFrameworkInitializer.java:52) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:84) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:80) 
    at org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:75) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:534) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:346) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:786) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:541) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.handler.RequestLogHandler.doStart(RequestLogHandler.java:162) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:282) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:740) 
    at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:522) 
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1104) 
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844) 
    at com.google.gwt.dev.DevMode.main(DevMode.java:322) 
    [WARN] FAILED [email protected]: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;)Ljavax/servlet/ServletRegistration; 
    at org.atmosphere.cpr.AtmosphereFrameworkInitializer.configureFramework(AtmosphereFrameworkInitializer.java:52) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:84) 
    at org.atmosphere.cpr.AtmosphereServlet.configureFramework(AtmosphereServlet.java:80) 
    at org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:75) 
    at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:534) 
    at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:346) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:786) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:265) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1242) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:717) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:494) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:541) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.handler.RequestLogHandler.doStart(RequestLogHandler.java:162) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:282) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64) 
    at com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:740) 
    at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:522) 
    at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1104) 
    at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:844) 
    at com.google.gwt.dev.DevMode.main(DevMode.java:322) 

Он развернут на сервере Jetty с помощью GWT Eclipse Plugin.

ответ

1

Похоже, что вы пытаетесь запустить атмосферу на Jetty 7.

javax.servlet.ServletContext.getServletRegistration(Ljava/lang/String;) 

была добавлена ​​в версии 3 Servlet API. Jetty 7 реализует версию 2.5 сервлета api, и поэтому не реализует метод getServeletRegistration. Который должен объяснить исключение.

Вы можете попробовать обновить плагин GWT Eclipse до версии 3.0. (Вы найдете его на рынке Eclipse, и обязательно удалите старый плагин перед установкой нового.)

Или вы можете попробовать работать с внешним сервером, таким как Tomcat 7 или 8. Оба поддерживают API сервлета 3.0.

Надеюсь, что это поможет.

+0

У меня есть проект, и ваш образец проекта запускается из одного и того же затмения/плагина/пристани. Мой проект не работает, Ваша работа. Как это возможно? Как проверить версию причала? – masterdany88

+1

Установите logLevel в TRACE. В этом случае версия причала будет отображаться в журнале. –