嗨,我在尝试将Maven jsp college项目部署到bluemix服务器时遇到问题。在我的tomcat服务器上,一切正常。我使用cloud Foundry推送到服务器,这没关系。索引页面工作正常,但是我无法访问例如我得到的页面。

Error 404: java.io.FileNotFoundException: SRVE0190E: File not found: /handler


这是一个使用注释而不是像这样在Web xml中设置路由的Java类。

@WebServlet("/handler")


我的pom.xml看起来像这样。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>ie.cit.ooss</groupId>
    <artifactId>BarSurvey</artifactId>
    <packaging>war</packaging>
    <version>1.0</version>
    <name>assignment2 Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.0.1</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    <build>
        <finalName>BarSurvey</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.0.0</version>
                <configuration>
                    <warSourceDirectory>src</warSourceDirectory>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
</project>


我的项目结构看起来像这样。

java - 找不到Maven Web应用部署文件-LMLPHP

您可以在这里看到我的项目。

https://github.com/yawlhead91/ChocolateBarsSurvey/tree/master/BarSurvey

如果有任何帮助,那就太好了。

谢谢

最佳答案

克隆git项目后,我进行了一些更改:


在index.jsp文件中

更改<form action="/BarSurvey/handler" method="POST">

<form action="/handler" method="POST">
在Handler.java文件中

更改response.sendRedirect("/BarSurvey/results.jsp");

到`response.sendRedirect(“ / results.jsp”);
在results.jsp文件中

更改<a href="/BarSurvey">Return</a>

<a href="/">Return</a>


使用java_buildpack推送应用程序

cf push appname -p target/BarSurvey.war -b java_buildpack

10-08 07:50