gpt4 book ai didi

tomcat - 构建可由 Maven Tomcat 插件部署的 war 文件

转载 作者:行者123 更新时间:2023-11-28 21:55:33 24 4
gpt4 key购买 nike

从技术上讲,这不是一个编程问题,而是一个关于从 Maven 项目部署我的 war 文件时遇到的错误的问题。

在构建我的 war 文件、运行 Tomcat7 并打开浏览器后我遇到的错误是:

HTTP Status 404 - /vaadin-test/

type Status report

message /vaadin-test/

description The requested resource (/vaadin-test/) is not available.

我正在使用 Vaadin作为我的网络应用程序平台。我有一个非常简单的项目,我正在尝试运行以进行测试。我在我的 POM 文件中使用了 tomcat7-maven-pluginmaven-war-plugin。 war 插件配置如下所示(我认为我什至不需要过滤):

        <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>

<configuration>
<packagingExcludes>WEB-INF/web.xml</packagingExcludes>
<warName>vaadin-test</warName>

<webResources>
<resource>
<directory>src/main/webapp/</directory>
<filtering>true</filtering>

<includes>
<include>**/*.xml</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>

web.xml 如下所示:

<servlet>
<servlet-name>myservlet</servlet-name>
<servlet-class>com.vaadin.terminal.gwt.server.ApplicationServlet</servlet-class>

<init-param>
<param-name>application</param-name>
<param-value>com.catalystitservices.vaadin.TestApp</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>myservlet</servlet-name>
<url-pattern>/test-app</url-pattern>
</servlet-mapping>

无论我尝试运行 mvn tomcat7:run 还是将创建的 war 文件部署到外部 Tomcat 服务器(通过管理器页面),我都会遇到同样的错误。这让我觉得我没有正确构建 war 文件。我找不到任何错误日志(但也许我遗漏了它们)。

有什么想法吗?

最佳答案

如果你没有<finalName>在您的 <build> 中指定堵塞,Maven 将按以下格式创建 war 名称:

vaadin-test-1.0.war

在哪里vaadin-test是 Artifact 名称,1.0是版本字符串。

因此您必须引用的网址是/vaadin-test-1.0不是/vaadin-test

此外,您的 vaadin servlet 绑定(bind)到 url/test-app,因此在添加 finalName 标签后,完整的 URL 应该类似于:/vaadin-test/test-app

注意!请注意 1.0这里只是举例,请自行咨询pom.xml真正的值(value)

关于tomcat - 构建可由 Maven Tomcat 插件部署的 war 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12146107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com