日期:2014-05-18  浏览次数:20700 次

使用eclipse建立的servlet,run后无法访问,发生404错误问
俺知道这是一个非常非常菜的问题
不要笑俺,俺刚开始学
我下载的是lomboz站的all版本的eclipse
用的是tomcat5.5服务器
然后建了个项目,并添加了个servlet,
run后,说是无法找到该文件发生404错误
jsp文件运行正常
大家告诉我这是为什么?
希望提供解决方法

------解决方案--------------------
把你的链接地址发出来看下
------解决方案--------------------
HTTP 404 - 无法找到文件 一般是文件地址不对或者被删除
是不是服务器没启动阿
------解决方案--------------------
HTTP 404 - 无法找到文件 一般是文件地址不对或者被删除
看是不是路径问题啊.
------解决方案--------------------
你写的servlet在web.xml中配置了吗?
------解决方案--------------------
请确认你的servlet路径

在地址框里面的那个路径


如果是正确的路径
http://localhost:8080/sample/servletName

sample代表 "工程名 "
servletName代表servlet的名称或者说是action的名称

很有可能变成

http://localhost:8080/servletName 或是别的什么

这样找不到相应的servlet是正确的,因为路径不对嘛,跟本没指到相对的工程下

用 <%=request.getContextPath()%> 去得到相对路径,一般就没什么问题了(不用写工程名)

我刚开始写servlet时也遇到了相同的问题
------解决方案--------------------
注意web.xml里 <url-pattern> 配置是否正确:
<servlet-mapping>
<servlet-name> servlet1 </servlet-name>
<url-pattern> /servlet1 </url-pattern>
</servlet-mapping>
------解决方案--------------------
真的是菜的问题,楼上说的对,在web.xml文件里配置servlet的路径,不配怎么找得到呢
------解决方案--------------------
web.xml 配置路径
------解决方案--------------------
1.servlet写好后编译..
2.然后放到你项目的\WEB-INF\classes下


web.xml是放在WEB-INF下,

在web.xml配置下类似如下:
<?xml version= "1.0 " encoding= "UTF-8 "?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN " "http://java.sun.com/dtd/web-app_2_3.dtd ">
<web-app>
<servlet>
<servlet-name> client_visit_dbOper_delete </servlet-name>
<servlet-class> client_visit.dbOper_delete </servlet-class>
</servlet>
<servlet>
<servlet-name> client_visit_dbOper_insert </servlet-name>
<servlet-class> client_visit.dbOper_insert </servlet-class>
</servlet>
<servlet>
<servlet-name> client_visit_dbOper_update </servlet-name>
<servlet-class> client_visit.dbOper_update </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> client_visit_dbOper_delete </servlet-name>
<url-pattern> /client_visit/dbOper_delete </url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name> client_visit_dbOper_insert </servlet-name>
<url-pattern> /client_visit/dbOper_insert </url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name> client_visit_dbOper_update </servlet-name>
<url-pattern> /client_visit/dbOper_update </url-pattern>
</servlet-mapping>