wangshihao1210 2016-06-14 15:07 采纳率: 0%
浏览 6165

过滤器问题tomact已启动就报错

严重: Exception starting filter Filter
java.lang.ClassNotFoundException: com.hp.filter.Filter
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:249)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3693)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4340)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2016-6-14 22:15:55 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2016-6-14 22:15:55 org.apache.catalina.core.StandardContext start
严重: Context [/web10] startup failed due to previous errors
1我的过滤器代码是:
package com.web.filter;

import java.io.IOException;

import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**

  • 实现过滤器功能
  • @author Administrator
    *
    */
    public class Filter implements javax.servlet.Filter {
    private FilterConfig config;

    @Override
    public void destroy() {
    // TODO Auto-generated method stub

    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {
    System.out.println("doFilter");
    // TODO Auto-generated method stub
    /**
    * 获取httprequest对象
    /
    HttpServletRequest httprequest = (HttpServletRequest) request;
    /
    *
    * 获取httpresponse对象
    /
    HttpServletResponse httpresponse = (HttpServletResponse) response;
    /
    *
    * 获取上下文参数
    /
    String noPat = config.getInitParameter("noPaths");
    /
    *
    * 分割字符
    /
    String[] str = noPat.split(";");
    /
    *
    * 循环遍历 分割的字符串
    /
    for (int i = 0; i < str.length; i++) {
    /
    *
    * 为空结束本次循环
    */
    if (str[i] != null && "".equals(str[i]))

            continue;
        /**
         * indexOf返回不为-1 放行
         */
        if (httprequest.getRequestURI().indexOf(str[i]) != -1) {
            chain.doFilter(request, response);
            return;
        }
    }
    
    /**
     * 获取session中的username(用户名)
     */
    String username = (String) httprequest.getSession().getAttribute(
            "username");
    /**
     * 用户名不为空 放行
     */
    if (username != null) {
        chain.doFilter(request, response);
    } 
    /**
     * 用户名为空  拦截并返回登录页面
     */
    else {
        httpresponse.sendRedirect("login.jsp");
    }
    

    }

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
    // TODO Auto-generated method stub
    config = filterConfig;
    System.out.println("init******************");
    }

}
配置文件是:
<?xml version="1.0" encoding="UTF-8"?>
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- Filter -->

Filter
com.hp.filter.Filter

noPaths
index.jsp;



Filter
.jsp;.html

<!-- IndexLoginServlet 登陆配置-->

IndexLoginServlet
com.web.servlet.IndexLoginServlet


IndexLoginServlet
/IndexLoginServlet

 <!-- Indext2RegisterServlet注册配置 -->


Indext2RegisterServlet
com.web.servlet.Indext2RegisterServlet


Indext2RegisterServlet
/Indext2RegisterServlet


index.jsp

  • 写回答

4条回答 默认 最新

  • devmiao 2016-06-14 15:15
    关注
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!