2017-03-09 113 views
0

嗨,我有一个问题,试图将我的Maven jsp college项目部署到bluemix服务器。每件事都在我的Tomcat服务器上本地处理。我使用云代工来推送服务器,这是好的。索引页面工作正常,但我无法访问我得到的网页例如。未找到Maven Web应用程序部署文件

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

这是一个Java类,它使用注释来代替在web xml中设置路由,如下所示。

@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> 

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

enter image description here

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

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

如果任何人有一定的帮助将是巨大的。

感谢

回答

0

检查你的web.xml - 您目前正在使用:

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
version="2.4"> 

当你应该使用:

<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0"> 

看到这个职位:servlet 3.0 @WebServlet use..what will be in web.xml?

+0

嘿感谢您的帮助把你的应用程序。仍然没有工作寿。 –

1

我克隆你的git项目后做了一些修改:

  1. 的index.jsp文件

    变化<form action="/BarSurvey/handler" method="POST">

    <form action="/handler" method="POST">

  2. Handler.java文件

    变化response.sendRedirect("/BarSurvey/results.jsp");

    to`response.sendRedirect(“/ results.jsp”);

  3. in results。JSP文件

    变化<a href="/BarSurvey">Return</a>

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

使用java_buildpack

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