关于jsp web项目,jsp页面与servlet数据不同步的解决办法(报错404、405等)即访问.jsp和访问web.xml中注册的/servlet/的区别

报错信息:

Type Status Report

Message HTTP method GET is not supported by this URL

Description The method received in the request-line is known by the origin server but not supported by the target resource.

 

我的注册配置为

<servlet-name>AddServlet<servlet-name>

<servlet-class>servlet.AddServlet<servlet-servlet>

 

<servlet-name>AddServlet<servlet-name>

<url-pattern>/servlet/add<url-pattern>

 

我的servlet名为/src/servlet/AddServlet.java

对应的jsp名为/web/add.jsp

 

以下纯属我乱猜了,不过确实解决了问题。

花了我3个多小时才出来的:

1.如果在href中访问add.jsp文件,会先访问界面,再访问后台,所以可能会出现数据不同步。(一般为空数据)

2.如果在herf中访问/servlet/add,会先访问后台,再访问界面,所以可能会报错405,也就是上面那个错误。

3.如果在servlet中重定向到add.jsp文件,是正确的做法。

4.如果在servlet中重定向到/servlet/add,会访问到空界面。(可能是JSP servlet的运行机制将servlet认成了/web/servlet/add这个界面文件,而没有这个文件,所以会出现空界面)

posted @ 2018-01-03 22:41 zhangjiuding 阅读(...) 评论(...) 编辑 收藏