Eclipse(Mars)+ Apache tomcat 8.0 + Apache CXF 3.1.3上的HTTP状态404

时间:2015-12-25 15:30:33

标签: eclipse tomcat8

我正在使用Tomcat 8.0但是当我尝试在URL中运行应用程序(http://localhost:8080/example1/services/Calculator)时,我总是提示HTTP状态为404。 1.我转到Tomcat服务器8.0属性并将位置更改为" tomcat 8.0v localhost server "。

  1. 我还双击了 Tomcat服务器,并将服务器位置更改为" 使用Tomcat安装"。

  2. 我复制了ROOT文件夹并粘贴到我的项目文件夹(proj folder.metadata.plugins \ org.eclipse.wst.server.core \ tmp0)。

  3. 然而,结果与此处的图像相同。HTTP Status error

    我很高兴看到这个问题的帮助。

1 个答案:

答案 0 :(得分:0)

尝试更改您的web.xml以包含以下内容

<servlet-mapping>
<servlet-name>YOUR-APP-NAME</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

url-pattern 中的/将告诉Tomcat在应用程序根文件夹中查找任何URL(您可以更改项目名称以匹配主目录的名称)。例如,如果要在http://localhost:8080/Calculator访问您的应用程序,请将Eclipse中的项目重命名为Calculator。

现在您只需要解析传递给servlet的实际URL(在doGet和doPost方法中)

E.g。

   public void doGet(HttpServletRequest request, HttpServletResponse 
        response) throws IOException, ServletException  {   

    String url = request.getRequestURL().toString();
    String page = url.substring(url.lastIndexOf("/"));

   if("some_page".equals(page)){
    //do something
    }else if("some_other_page".equals(page)){
    //do something else
   }else{
      //open default page
      getServletContext().getRequestDispatcher("/Home.jsp").forward(request,    response);  
 }
 }