Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在GAE上部署vaadin项目?_Java_Google App Engine_Vaadin - Fatal编程技术网

Java 如何在GAE上部署vaadin项目?

Java 如何在GAE上部署vaadin项目?,java,google-app-engine,vaadin,Java,Google App Engine,Vaadin,我正在尝试将现有的vaadin项目部署到GAE。 但是我不断地得到一个错误:ClassNotFoundException:com.vaadin.server.GAEApplicationServlet 这就是我所做的: 注释掉了我的扩展UI类中的@WebServlet注释 项目属性,选中:使用谷歌应用程序引擎。因此,一些库被添加到 我的WEB-INF/lib文件夹:GWTServlet,jsr107,一些附录-* 创建了appengine web.xml 创建web.xml: <ser

我正在尝试将现有的
vaadin
项目部署到
GAE
。 但是我不断地得到一个错误:
ClassNotFoundException:com.vaadin.server.GAEApplicationServlet

这就是我所做的:

  • 注释掉了我的
    扩展UI
    类中的
    @WebServlet
    注释

  • 项目属性,选中:使用谷歌应用程序引擎。因此,一些库被添加到 我的
    WEB-INF/lib
    文件夹:
    GWTServlet,jsr107,一些附录-*

  • 创建了
    appengine web.xml

  • 创建
    web.xml

     <servlet>
        <servlet-name>MyProject</servlet-name>
        <servlet-class>com.vaadin.server.GAEApplicationServlet</servlet-class>
        <init-param>
            <param-name>UI</param-name>
            <param-value>de.mypath.ApplicationUI</param-value>
        </init-param>
    </servlet>
    
    
    我的项目
    com.vaadin.server.GAEApplicationServlet
    用户界面
    de.mypath.ApplicationUI
    
MyProject
/*

如果我使用
com.vaadin.server.VaadinServlet
并在本地tomcat上运行,我可以很好地运行我的项目。 但是在jetty GAE上运行(或者在云中部署),我得到了上面提到的
ClassNotFountException


这里出了什么问题?

我已经有一段时间没有使用GAE了,但在我年轻的时候,我似乎不得不自己给WEB-INF/lib添加一些JAR,尽管本地的一切都很好。后来我会收到关于那些罐子的警告,但是如果我删除它们,我会再次得到NoClassDefFoundException。

vaadin-server-7.5.10.jar复制到WEB-INF/lib,并使用
com.vaadin.server.GAEVaadinServlet
而不是
com.vaadin.server.GAEApplicationServlet
解决了这个问题。

投诉的类来自vaadin-servlet.jar。我已经在WEB-INF/lib文件夹中复制了它(在所有其他库中),用于测试它,但没有更改任何内容……我唯一能想到的是GAE中不允许使用某些类,尽管它似乎是GAEApplicationServlet,因为它的名称不应该引用任何这些类。最新的vaadin-servlet.jar有多新?也许可以尝试以前的版本?使用7.1.1,也尝试7.1.0。但是不能再回头了,因为我使用Servlet 3.0,这在以前是不受支持的。。。