我是servlets的新手。我在eclipse中创建了一个动态web项目。我在我的项目中有以下文件
home.html validateServlet.java
我已经将经过验证的servlet定义为home.html表单中的一个操作。然而,当我运行它时,我得到了http状态404。下面是我的项目的层次结构
Project
Java Resources
src
com.servlets
ValidateServlet.java
build
WebContent
META-INF
WEB-INF
web.xml
hello.htmlmy web.xml的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web- app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>Website</display-name>
<servlet>
<description></description>
<display-name>ValidateServlet</display-name>
<servlet-name>validate</servlet-name>
<servlet-class>com.oracle.coen235.servlets.ValidateServlet</servlet-class>
</servlet>
</web-app>在我的hello.html中,操作被指定为
可能的问题是什么?我想我不能为我的servlet生成类文件。有人能指导我解决这个问题吗?
发布于 2012-11-25 07:02:28
你似乎把事情搞混了。
<servlet-class>com.oracle.coen235.servlets.Validate</servlet-class>应该列出完整的类名。我没看到你的包名。
它应该是
<servlet-class>com.oracle.coen235.servlets.ValidateServlet</servlet-class>或者不管你的包名是什么。
我们要将servlet映射到路径吗?它应该是这样的:
<servlet-mapping>
<servlet-name>validate</servlet-name>
<url-pattern>/validate</url-pattern>
</servlet-mapping>或者直接在servlet类中添加注释。
https://stackoverflow.com/questions/13546523
复制相似问题