如何在GAE上部署vaadin项目?

时间:2013-07-30 09:10:15

标签: java google-app-engine vaadin

我正在尝试将现有的vaadin项目部署到GAE。 但我经常收到错误:ClassNotFoundException: com.vaadin.server.GAEApplicationServlet

这就是我所做的:

  • @WebServlet班级

  • 中注明了extends UI注释
  • projec属性,已选中:使用Google App Engine。从而添加了一些库 我的WEB-INF/lib文件夹:gwt-servlet, jsr107, some appendine-*

  • 创建了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>
    

<servlet-mapping> <servlet-name>MyProject</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping>

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

这里有什么问题?

2 个答案:

答案 0 :(得分:0)

自从我使用过GAE以来已经有一段时间了,但是在我看来我自己必须在WEB-INF / lib中添加一些罐子,尽管本地一切都很好。后来我会得到关于那些相同罐子的警告,但如果我删除它们,我会再次得到NoClassDefFoundException。

答案 1 :(得分:0)

vaadin-server-7.5.10.jar 复制到WEB-INF / lib并使用 com.vaadin.server.GAEVaadinServlet 代替com.vaadin.server.GAEApplicationServlet解决了问题。