servlet-web JSP filter 控制权限配置后,出现404错误

问题描述

web JSP filter 控制权限配置后,出现404错误
index.jsp登陆页面 UserServlet.java是针对登陆的一个servlet
UserFilter.java是控制权限的类show.jsp是登陆成功后进入的页面
error.jsp是当用户绕过index.jsp登陆直接通过控制url进入show.jsp时会跳出的页面。


文件结构 XML配置 index.jsp如图

UserServlet.java
public class UserServlet extends HttpServlet{
public void doGet(HttpServletRequest req HttpServletResponse resp)throws ServletExceptionIOException{
String name=req.getParameter(""username"");
String password=req.getParameter(""password"");
UserInfo info= new UserInfo();
try{
if(password.equals(""123456"")){
info.setName(name);
info.setPassword(password);
req.getSession().setAttribute(""userinfo"" info);
System.out.println(""登陆成功"");}
else{
System.out.println(""登录失败"");}}
catch(Exception e){
e.printStackTrace();}
RequestDispatcher rd=req.getRequestDispatcher(""/show.jsp"");
rd.forward(req resp);}
public void doPost(HttpServletRequest request HttpServletResponse response)throws ServletExceptionIOException{
doGet(requestresponse);}}
UserFilter.java
public class UserFilter {
public void destroy() {}
public void doFilter(ServletRequest request ServletResponse responseFilterChain filter) throws IOException ServletException {
UserInfo info=(UserInfo)((HttpServletRequest) request).getSession().getAttribute(""userinfo"");
if(info.getName()!=null) {
filter.doFilter(request response); }
else {
response.setContentType(""text/html;charset=utf-8"");
((HttpServletResponse) response).sendRedirect(""../error.jsp""); }}
public void init(FilterConfig arg0) throws ServletException {}}

解决方案

404是你点击哪个页面出来的呢,还是说一访问login.jsp登陆用户名时候跳转404?,如果是这样的话,

http://blog.csdn.net/liuxiaogangqq/article/details/8257400
参考一下这个,你的过滤器代码中

if(info.getName()!=null) {
filter.doFilter(request response);
}
如果用户存在,应该跳转,你为啥没跳转呢

一般是这样写

if (user != null) {

chain.doFilter(req resp);

return;

}

        最后一堆判断,都符合了再跳转,而且你的error.jsp不是和show。jsp同级目录吗,为啥有..呢

解决方案二:
为什么两个jsp你在servlet里写的路径不一样呢

解决方案三:
404错误肯定不是权限问题,路径问题

解决方案四:
应该是form action =""login""这里出问题了,相对路径没设置好
<%

String path = request.getContextPath();

String basePath = request.getScheme() + ""://""

+ request.getServerName() + "":"" + request.getServerPort()

+ path + ""/"";

%>

然后

用户上传图片页面

解决方案五:
在《head》里头加上

解决方案六:

时间: 2025-01-26 05:17:03

servlet-web JSP filter 控制权限配置后,出现404错误的相关文章

web jsp filter 权限控制 运行测试出现500问题 怎么解决

问题描述 web jsp filter 权限控制 运行测试出现500问题 怎么解决 工程结构 index.jsp为登陆页面,UserServlet.java为针对登陆的servlet,登陆成功或失败都会跳转到show.jsp,但是有Userfilter.java的过滤.一旦登陆失败会让页面转到error.jsp. 正常是流程:进入index.jsp输入账号密码,登陆成功后进入show.jsp(测试过没问题) 错误的用例:通过控制url绕过index.jsp直接进入show.jsp(出现500错误

java web 异常求助,Myeclipse 的 Tomcat出现404错误

问题描述 java web 异常求助,Myeclipse 的 Tomcat出现404错误 求求大神们帮帮忙,过几天就要答辩了,没想到昨天突然就出现这个错误,自己一个人瞎搞了一个晚上也无济于事 解决方案 你 的图片已经看不到了.你加我qq413159383给我发过来.我给你看看 解决方案二: 看web.xml配置文件是否正确,映射的路径和servlet -class是否配置正确 解决方案三: 参考http://www.cnblogs.com/kaixin110/archive/2007/12/12

使用struts进行页面跳转 jsp中含有frameset框架,报404错误

问题描述 使用struts进行页面跳转 jsp中含有frameset框架,报404错误 使用struts进行页面跳转 jsp中含有frameset框架,报404错误 这是jsp代码 <%@ page contentType=""text/html; charset=UTF-8"" language=""java"" %><!DOCTYPE html PUBLIC ""-//W3C//DTD

eclipse tomcat配置正确 出现404错误

问题描述 解决方案 解决方案二:localhost换成127.0.0.1试试解决方案三:tomcat默认配置是wtpwebapps,里面默认是没有root文件夹的,所以当然没有主页,解决办法:创建服务器时,双击服务器,修改为tomcat默认安装路径,并将wtpwebapps文件夹改为webapps文件夹,然后重启就能找到了解决方案四:在Eclipse调试,Eclipse默认会在Tomcat里把每个工程分配到一个子目录下,比如你的工程名字是Abc,那么默认应该访问http://localhost:

svn权限配置的一点问题

保存为:utf-8格式,       不然的话老报"权限配置不正确"的错误         commit强制写日志: 版本库中hooks目录下,新建文本文件,改名为 pre-commit.bat  , 文件内容为: setlocal set REPOS=%1 set TXN=%2 rem check that logmessage contains at least 10 characters svnlook log "%REPOS%" -t "%TXN%

Web服务器防木马及漏洞攻击的权限配置

从系统安装到用户安全设置.系统权限设置三方面进行讲解Web服务器防木马及漏洞攻击的权限配置,希望通过这篇文章可以让你的服务器更加安全. 一.系统的安装   1.按照Windows2003安装光盘的提示安装,默认情况下2003没有把IIS6.0安装在系统里面. 2.IIS6.0的安装 以下为引用的内容: 开始菜单->控制面板->添加或删除程序->添加/删除Windows组件 应用程序 ---ASP.NET(可选) --启用网络 COM+ 访问(必选) --Internet 信息服务(IIS

servlet和JSP过滤器Filter

js|servlet 或许,servlet API的2.3版本中最重要的一个新功能就是能够为servlet和JSP页面定义过滤器.过滤器提供了某些早期服务器所支持的非标准"servlet链接"的一种功能强大且标准的替代品.过滤器是一个程序,它先于与之相关的servlet或JSP页面运行在服务器上.过滤器可附加到一个或多个servlet或JSP页面上,并且可以检查进入这些资源的请求信息.在这之后,过滤器可以作如下的选择:l 以常规的方式调用资源(即,调用servlet或JSP页面).l

上传服务器错误-jsp项目传到服务器后 servlet访问不到

问题描述 jsp项目传到服务器后 servlet访问不到 Object not found! The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error. If you think this is a server error, p

web.xml中的所有配置,Listener和Filter的加载顺序

web.xml 中的listener. filter.servlet 加载顺序及其详解 在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰.         首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter