我是java servlet编程的新手。我安装了tomcat并且它正在运行。但是在调用jsp文件时我收到以下错误
请求的资源不可用。
我将jsp文件保存在路径C:\ apache-tomcat-7.0.52 \ webapps \ Pradeeep_prctice
我正在尝试的网址是:localhost:8080 / Pradeeep_prctice / Helloworld.jsp
我的程序代码是
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World!</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Hello World!</h1>");
out.println("</body>");
out.println("</html>");
}
}
请找到我的web.xml文件
<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"
metadata-complete="true">
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
<servlet>
<servlet-name>Helloworld</servlet-name>
<servlet-class>Pradeeep_prctice.Helloworld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Helloworld</servlet-name>
<url-pattern>/Helloworld</url-pattern>
</servlet-mapping>
</web-app>
答案 0 :(得分:0)
您尚未在部署描述符(web.xml)文件中配置HelloWorld
servlet。
Web应用程序的部署描述符描述了应用程序的类,资源和配置以及Web服务器如何使用它们来提供Web请求。当Web服务器收到对应用程序的请求时,它使用部署描述符将请求的URL映射到应该处理请求的代码。
部署描述符是名为
web.xml
的文件。它位于WEB-INF/
目录下的应用程序WAR中。该文件是一个XML文件,其根元素为<web-app>
web.xml
定义URL路径与处理具有这些路径的请求的servlet之间的映射。 Web服务器使用此配置来标识用于处理给定请求的servlet,并调用与请求方法相对应的类方法(例如,HTTP GET请求的doGet()
方法)。要将URL映射到servlet,请使用
<servlet>
元素声明servlet,然后使用<servlet-mapping>
元素定义从URL路径到servlet声明的映射。
<servlet>
元素声明servlet,包括用于通过文件中的其他元素引用servlet的名称,用于servlet的类以及初始化参数。您可以使用具有不同初始化参数的相同类声明多个servlet。每个servlet的名称在部署描述符中必须是唯一的。
您的文件应为
<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" metadata-complete="true">
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>yourpakage.HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
</servlet-mapping>
</web-app>