即使遵循设置说明,intellij tomcat服务器也会给出404

时间:2016-09-27 18:12:00

标签: java jsp tomcat servlets intellij-idea

我正在尝试在intellij上设置tomcat服务器以使用JSP,但它一直在给我404错误。我已经尝试了所有可行的谷歌和堆栈溢出的解决方案;但它没用。

我的tomcat服务器是9.0.0,当我在浏览器上运行localhost:8080时,它会打开默认的tomcat页面。

下面是我的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
     version="3.1">
<display-name>Hello World Application</display-name>

<servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>com.jc.servlet.Servlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>HelloServlet</servlet-name>
    <url-pattern>/greeting</url-pattern>
</servlet-mapping>

下面是我的index.jsp,我甚至没有碰过

<%--
Created by IntelliJ IDEA.
User: JC
Date: 28/09/2016
Time: 1:23 AM
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
$END$
</body>
</html>

下面是com.jc.servlet下名为Servlet的servlet     包com.jc.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * Created by JC on 28/09/2016.
 */
public class Servlet extends HttpServlet {

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

    response.getWriter().println("Hello World!");

}
}

我为连接tomcat服务器和intelliJ而执行的设置是在设置下的应用服务器上添加tomcat 9.0.0,以部署展开的工件并将应用程序上下文设置为/ hello-world

所以当我去http://localhost:8080/hello-world/greeting时,我应该能够看到我的servlet,但它给了我404错误。但是,当我转到http://localhost:8080/时,默认页面加载,因此tomcat服务器正在运行。

请帮忙。我无能为力,因为服务器无法工作

1 个答案:

答案 0 :(得分:0)

web.xml:您不必在servlet定义的末尾关闭web-app标记。