您的位置:程序门 -> java -> web 开发



我遇到的一个filter问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


我遇到的一个filter问题
发表于:2007-01-31 15:42:39 楼主
filter代码如下:
package   util;

import   java.io.ioexception;
import   javax.servlet.http.*;
import   javax.servlet.filter;
import   javax.servlet.filterchain;
import   javax.servlet.filterconfig;
import   javax.servlet.servletexception;
import   javax.servlet.servletrequest;
import   javax.servlet.servletresponse;
import   javax.servlet.http.httpservlet;

public   class   adminfilter   extends   httpservlet   implements   filter  
{  
/**
  *  
  */
private   static   final   long   serialversionuid   =   -5545950069282900798l;
protected   filterconfig   filterconfig;
string   login_page= "login.jsp ";
public   void   dofilter(final   servletrequest   req,   final   servletresponse   res,final   filterchain   chain)  
throws   ioexception,   servletexception  
{
//   todo   自动生成方法存根
httpservletrequest   hreq=(httpservletrequest)req;
httpservletresponse   hres=(httpservletresponse)res;
httpsession   session=hreq.getsession();
string   flag= " ";
try
{
flag=(string)session.getattribute( "islogin ");
if( "true ".equals(flag))
{
chain.dofilter(hreq,   hres);
}
else
{
hres.sendredirect(login_page);
}
}
catch(exception   e)
{
e.printstacktrace();
}
}

public   void   init(filterconfig   config)   throws   servletexception  
{
//   todo   自动生成方法存根
this.filterconfig=config;
}

public   void   setfilterconfig(filterconfig   filterconfig)
{
this.filterconfig=filterconfig;
}

public   void   destroy()
{
this.filterconfig=null;
}

}


xml中配置如下:

    <servlet>
        <description> adminfilter </description>
        <display-name> adminfilter </display-name>
        <servlet-name> adminfilter </servlet-name>
        <servlet-class> util.adminfilter </servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name> adminfilter </servlet-name>
        <url-pattern> /admin/* </url-pattern>
    </servlet-mapping>

我现在通过http://localhost/infosite/login.jsp登入到http://localhost/infosite/admin/admin_.jsp,总是出现一下错误:

http   status   405   -   http   method   get   is   not   supported   by   this   url

我尝试了/admin/下的其他页面登入,都出现相同错误。于是我将配置改成如下:

<servlet-mapping>
        <servlet-name> adminfilter </servlet-name>
        <url-pattern> /admin/admin_.jsp </url-pattern>
    </servlet-mapping>

这时访问/admin_.jsp出错,/admin/下的其他页面可以访问!

我现在要实现/admin/下的所有页面过滤,应该怎么做?
发表于:2007-01-31 15:56:511楼 得分:0
hres.sendredirect(login_page);

这里是否正确??
发表于:2007-01-31 17:39:362楼 得分:0
jackson416     感谢你关注

说的hres.sendredirect(login_page);在这里string   login_page= "login.jsp ";定义

还有别的意思吗?
发表于:2007-01-31 17:48:073楼 得分:0
你路径对不对啊...??
发表于:2007-01-31 17:50:254楼 得分:0
怎么说?

你加我qq聊好吗?

18572804
发表于:2007-01-31 18:00:555楼 得分:0
qq不可以上。。。

我看过你的servlet是书上的。。。我也做过。。。

没问题的啊。。。下班了。。。
发表于:2007-02-07 21:06:166楼 得分:0
我的可以了!也不知道怎么回事代码复制到另一个文件中就可以了,有分


快速检索

最新资讯
热门点击