使用Vaadin将Maven项目部署到Tomcat

时间:2012-02-18 00:42:25

标签: java tomcat deployment maven vaadin

这可能是一个令人难以置信的愚蠢问题,但我有一个Web应用程序,它非常依赖jQuery来处理我正在尝试使用Vaadin迁移到的各种小部件和美学实用程序。对于初学者,我试图用Vaadin创建你的普通“Hello World”应用程序 - 用Maven构建并部署到Tomcat,我在部署它时遇到了问题。我一直关注这里发布的turtorial(https://vaadin.com/book/-/page/intro.walkthrough.html)。到目前为止,这是我的文件结构:

HelloWorld
    src
        main
            java
                com
                    business
                        helloworld
                            HelloWorld.java
            resources
            webapp
                WEB-INF
                    web.xml
        test
    target
    pom.xml

我猜我的问题出现在随后的web.xml中:

的web.xml

<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
    <display-name>HelloWorld</display-name> 
    <servlet>
        <servlet-name>HelloWorld</servlet-name>
        <servlet-class>com.vaadin.terminal.gwt.server.ApplicationServlet</servlet-class>
        <init-param>
            <param-name>application</param-name>
            <param-value>HelloWorld</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloWorld</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>

我已尽力按照我见过的例子,但我有一种感觉,我犯了一个愚蠢的错误。当我将项目作为Maven Build(tomcat:redeploy)运行时,它不会出现在我的Tomcat管理器中。有任何想法吗?如果您需要更多信息(比如我的pom.xml中的内容),请告诉我......

编辑:创建Vaadin项目并将其转换为Maven更好,反之亦然?

1 个答案:

答案 0 :(得分:3)

应用程序param-value中的

MyApplicationClass应该是整个限定类名,比如

  

com.business.helloworld.HelloWorld

(我在手机上,所以我没有检查语法,但应该是这样。)

编辑:对于第二个问题,有一个Maven原型可以创建一个Maven Vaadin项目。通过使用它你不必转换任何一种方式。