我正在运行Eclipse Juno和Tomcat 7.我正在使用servlet创建一个基本的Hello World程序。当我在本地主机上运行程序时,我得到:
HTTP状态404 - /website2/WEB-INF/classes/T.java
输入状态报告
message /website2/WEB-INF/classes/T.java
description请求的资源(/website2/WEB-INF/classes/T.java) 不可用。
其中“website2”是我的项目,T.java
是我的页面名称。
答案 0 :(得分:2)
创建servlets
时,您无法直接访问这些类。
有两种方法可以通过annotations
或web.xml
来定义servlet映射。
使用3.0规范的Servlet有一个注释,指定servlet-mapping ...你应该检查一下,看看哪些URL映射到你的类/ servlet。
您应该有一行以@WebServlet
开头,例如:
@WebServlet(name="HelloWorldServlet", urlPatterns={"/foo", "/bar"})
在上面的示例中,当通过PUT或GET访问URL doGet
和doPost
时,将执行servlet serverName:Port/foo
和serverName:Port/bar
方法。
如果您使用较旧的规范,则需要检查具有XML格式映射的web.xml
文件。
请参阅:http://docs.oracle.com/cd/E13222_01/wls/docs92/webapp/configureservlet.html
<servlet>
<servlet-name>watermelon</servlet-name>
<servlet-class>myservlets.watermelon</servlet-class>
</servlet>