日期:2014-05-17  浏览次数:20687 次

配置都检查过了 为什么servlet就是访问错误呢
我的工程原来是能正常访问的,原来的Jsp文件都在WebRoot下 现在我在WebRoot下新建了个文件夹叫user 并把jsp文件都放到了下面 然后我访问其中一个jsp文件 地址是http://127.0.0.1:8090/NSIEMP/user/query.jsp(访问正常)
query.jsp里面写的是:<form name="myform" action="QueryServlet" method= "post" onsubmit="return check()">
web.xml的映射写的是:<servlet>
  <servlet-name>Query</servlet-name>
  <servlet-class>servlet.user.QueryUserServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  <servlet-name>Query</servlet-name>
  <url-pattern>/QueryServlet</url-pattern>
  </servlet-mapping>
但是我的query.jsp一点表单的提交就显示HTTP Status 404 - /NSIEMP/user/QueryUserServlet
我的QueryUserServlet类在servlet.user.QueryUserServlet下面 为什么系统回去user下面找还告诉我找不到呢?难道我配置错了?


------解决方案--------------------
路径错误了,query.jsp里面可以写:<form name="myform" action="<%=request.getContextPath() %>/QueryServlet" method= "post" onsubmit="return check()">可以修改路径错误
web.xml映射文件
<servlet-name>Query</servlet-name>
<servlet-class>servlet.QueryUserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Query</servlet-name>
<url-pattern>/QueryServlet</url-pattern>
</servlet-mapping>

------解决方案--------------------
最好用绝对路径

既然你jsp文件放在了user文件夹下,那么action就应该是../QueryServlet。../表示上层目录