Java SpringVaadinServlet调用VaadinServlet中缺少的方法?
我试图遵循Vaadin Spring教程,但在设置servlet时遇到了一个错误 以下是基于教程的我的UI类:Java SpringVaadinServlet调用VaadinServlet中缺少的方法?,java,spring,vaadin,vaadin7,Java,Spring,Vaadin,Vaadin7,我试图遵循Vaadin Spring教程,但在设置servlet时遇到了一个错误 以下是基于教程的我的UI类: @SpringUI @Theme("valo") public class MyUI extends UI { @Override protected void init(VaadinRequest request) { } @WebServlet(urlPatterns = { "/MyUI/*", "/VAADIN/*" }, name = "MyUIServlet",
@SpringUI
@Theme("valo")
public class MyUI extends UI {
@Override
protected void init(VaadinRequest request) {
}
@WebServlet(urlPatterns = { "/MyUI/*", "/VAADIN/*" }, name = "MyUIServlet", asyncSupported = true)
public static class OperationRoomUIServlet extends SpringVaadinServlet {
}
以下是错误消息:
java.lang.NoSuchMethodError: com.vaadin.server.VaadinServletService.addSessionInitListener(Lcom/vaadin/server/SessionInitListener;)Lcom/vaadin/shared/Registration;
at com.vaadin.spring.server.SpringVaadinServlet.servletInitialized(SpringVaadinServlet.java:75)
at com.vaadin.server.VaadinServlet.init(VaadinServlet.java:234)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1227)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1140)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:817)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:509)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1104)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1524)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1480)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
如果我把它设置为一个普通的vaadinservlet,它就可以工作了,但是我正在尝试将它与Spring集成,这样我就可以将它用作我的
@WebServlet(urlPatterns = { "/MyUI/*", "/VAADIN/*" }, name = "MyUISevlet", asyncSupported = true)
public static class MyUISevlet extends VaadinServlet {
}
您可能正在使用VaadinSpring2,它是针对VaadinFramework8的,但在项目中以某种方式包含了VaadinFramework7JAR 在Vaadin框架8中,该方法存在 但在Vaadin框架7中,它有一个不同的特征
我想不出这个问题。我正在使用@SpringUI(path=“client”)@efekctive,谢谢您的回复。正如Artur Signell所说,我使用的是Vaadin Spring 2,它适用于Vaadin 8。将Vaadin Spring降级到1.2解决了这个问题。没有问题,我误读了opHey,谢谢你的回复。将版本更改为1.2.0修复了此问题。在Vaadin文档中,甚至对于Vaadin 7,它也说要使用最新版本。可能只是他们的错误part@LR07离题,仅供参考,艺术是:-)的一部分