严重: 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