Return-Path: Delivered-To: apmail-tomcat-users-archive@www.apache.org Received: (qmail 60096 invoked from network); 9 May 2006 16:03:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 9 May 2006 16:03:40 -0000 Received: (qmail 66005 invoked by uid 500); 9 May 2006 16:03:19 -0000 Delivered-To: apmail-tomcat-users-archive@tomcat.apache.org Received: (qmail 65985 invoked by uid 500); 9 May 2006 16:03:19 -0000 Mailing-List: contact users-help@tomcat.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Tomcat Users List" Delivered-To: mailing list users@tomcat.apache.org Received: (qmail 65974 invoked by uid 99); 9 May 2006 16:03:18 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 May 2006 09:03:18 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of jason.s.beck@gmail.com designates 64.233.166.178 as permitted sender) Received: from [64.233.166.178] (HELO py-out-1112.google.com) (64.233.166.178) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 09 May 2006 09:03:17 -0700 Received: by py-out-1112.google.com with SMTP id i49so2581717pyi for ; Tue, 09 May 2006 09:02:56 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:mime-version:content-type; b=oBp9vyKNg3dKM6qKDyS5J08TyCN4IgxHOo18EZk3wox/9HrN6IvtBmRlprO7kMlxjFUuo+Fw4dm4ANYElv2LId+XxW7P0wtkZn3W4BBi2gR8NlVjB0GJS4tibLwguAxfMrMtTAP99AYr0aNUgdJPpZmLv0+wDDwaGJiEEO4opzI= Received: by 10.35.97.17 with SMTP id z17mr1113713pyl; Tue, 09 May 2006 09:02:56 -0700 (PDT) Received: by 10.35.22.19 with HTTP; Tue, 9 May 2006 09:02:56 -0700 (PDT) Message-ID: Date: Tue, 9 May 2006 12:02:56 -0400 From: "Jason Beck" To: "Tomcat Users List" Subject: Context fails to load with Filter MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_29156_19525071.1147190576125" X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_Part_29156_19525071.1147190576125 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hello list, I have written my first filter and think that I have it right, but when I try to start Tomcat 5.5.9 after applying the necessary configuration change= s to web.xml, the Context that the Filter is in fails to start. Perhaps someone can tell me what I may have done wrong. <-- web.xml --> AuthenticateFilter com.affinity.tasc.filters.AuthenticateFilter AuthenticateFilter Index Index com.affinity.tasc.core.Index Index /Index <-- end web.xml --> <-- Filter code --> package com.affinity.tasc.filters; import java.io.IOException; import javax.servlet.*; import javax.servlet.http.*; import com.affinity.tasc.beans.SiteUserBean; public abstract class AuthenticateFilter implements Filter { private FilterConfig fc; public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { /* Make sure we are dealing with HTTP */ if (req instanceof HttpServletRequest) { HttpServletRequest request =3D (HttpServletRequest)req; HttpServletResponse response =3D (HttpServletResponse)res; HttpSession session =3D request.getSession(false); if (request.getParameter("Authenticate").equals("1"= )) { try { SiteUserBean user =3D new SiteUserBean(); user.setUsername( request.getParameter("username")); user.setPassword( request.getParameter("password")); int authed =3D user.getUserAuthed()= ; /* Successful authentication */ if (authed > 0) { session.setAttribute("user"= , user); } session.setAttribute("authed", authed); } catch (NullPointerException nx) { nx.printStackTrace(); } catch (Exception ex) { ex.printStackTrace(); } } } /* Continue filtering */ chain.doFilter(req, res); } public void init(FilterConfig filterConfig) throws ServletException { this.fc =3D filterConfig; } public void destroy() { this.fc =3D null; } } <-- end filter code --> Here is the output from catalina.out when I try to start tomcat with this filter installed... May 9, 2006 11:46:31 AM org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 May 9, 2006 11:46:31 AM org.apache.catalina.startup.Catalina load INFO: Initialization processed in 1270 ms May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardService start INFO: Starting service Catalina May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/5.5.9 May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardHost start INFO: XML validation disabled May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardContext filterStar= t SEVERE: Exception starting filter AuthenticateFilter java.lang.InstantiationException at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance( InstantiationExceptionConstructorAccessorImpl.java:30) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at java.lang.Class.newInstance0(Class.java:350) at java.lang.Class.newInstance(Class.java:303) at org.apache.catalina.core.ApplicationFilterConfig.getFilter( ApplicationFilterConfig.java:212) at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef( ApplicationFilterConfig.java:308) at org.apache.catalina.core.ApplicationFilterConfig.( ApplicationFilterConfig.java:79) at org.apache.catalina.core.StandardContext.filterStart( StandardContext.java:3540) at org.apache.catalina.core.StandardContext.start( StandardContext.java:4110) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1012) at org.apache.catalina.core.StandardHost.start(StandardHost.java :718) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1012) at org.apache.catalina.core.StandardEngine.start(StandardEngine.jav= a :442) at org.apache.catalina.core.StandardService.start( StandardService.java:450) at org.apache.catalina.core.StandardServer.start(StandardServer.jav= a :683) at org.apache.catalina.startup.Catalina.start(Catalina.java:537) 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:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409) May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardContext start SEVERE: Error filterStart May 9, 2006 11:46:32 AM org.apache.catalina.core.StandardContext start SEVERE: Context [/TASC] startup failed due to previous errors May 9, 2006 11:46:33 AM org.apache.catalina.core.ApplicationContext log INFO: org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [ org.apache.webapp.balancer.RuleChain: [ org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [ org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [ org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]] May 9, 2006 11:46:33 AM org.apache.catalina.loader.WebappClassLoaderloadCla= ss INFO: Illegal access: this web application instance has been stopped already. Could not load org.apache.xerces.impl.dtd.DTDGrammar. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact. May 9, 2006 11:46:33 AM org.apache.commons.modeler.RegistryregisterComponen= t SEVERE: Null component Catalina:type=3DJspMonitor,name=3Djsp,WebModule=3D//= sa- test.valueweb.net/servlets-examples,J2EEApplication=3Dnone,J2EEServer=3Dnon= e May 9, 2006 11:46:33 AM org.apache.catalina.startup.HostConfigdeployDirecto= ry SEVERE: Error deploying web application directory servlets-examples java.lang.ThreadDeath at org.apache.catalina.loader.WebappClassLoader.loadClass( WebappClassLoader.java:1221) at org.apache.catalina.loader.WebappClassLoader.loadClass( WebappClassLoader.java:1181) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) at org.apache.xerces.impl.dtd.XMLDTDValidator.doctypeDecl(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl.scanDoctypeDecl(Un= known Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(Unk= nown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source= ) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.tomcat.util.digester.Digester.parse(Digester.java :1561) at org.apache.catalina.startup.ContextConfig.applicationWebConfig( ContextConfig.java:339) at org.apache.catalina.startup.ContextConfig.start( ContextConfig.java:1031) at org.apache.catalina.startup.ContextConfig.lifecycleEvent( ContextConfig.java:255) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:119) at org.apache.catalina.core.StandardContext.start( StandardContext.java:4053) at org.apache.catalina.core.ContainerBase.addChildInternal( ContainerBase.java:759) at org.apache.catalina.core.ContainerBase.addChild( ContainerBase.java:739) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java :524) at org.apache.catalina.startup.HostConfig.deployDirectory( HostConfig.java:894) at org.apache.catalina.startup.HostConfig.deployDirectories( HostConfig.java:857) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.jav= a :475) at org.apache.catalina.startup.HostConfig.start(HostConfig.java :1102) at org.apache.catalina.startup.HostConfig.lifecycleEvent( HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( LifecycleSupport.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1020) at org.apache.catalina.core.StandardHost.start(StandardHost.java :718) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java :1012) at org.apache.catalina.core.StandardEngine.start(StandardEngine.jav= a :442) at org.apache.catalina.core.StandardService.start( StandardService.java:450) at org.apache.catalina.core.StandardServer.start(StandardServer.jav= a :683) at org.apache.catalina.startup.Catalina.start(Catalina.java:537) 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:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409) May 9, 2006 11:46:33 AM org.apache.catalina.core.ApplicationContext log INFO: ContextListener: contextInitialized() May 9, 2006 11:46:33 AM org.apache.catalina.core.ApplicationContext log INFO: SessionListener: contextInitialized() May 9, 2006 11:46:34 AM org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 May 9, 2006 11:46:34 AM org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8009 May 9, 2006 11:46:34 AM org.apache.jk.server.JkMain start INFO: Jk running ID=3D0 time=3D0/25 config=3Dnull May 9, 2006 11:46:34 AM org.apache.catalina.storeconfig.StoreLoader load INFO: Find registry server-registry.xml at classpath resource May 9, 2006 11:46:34 AM org.apache.catalina.startup.Catalina start INFO: Server startup in 2637 ms thanks for your help. ------=_Part_29156_19525071.1147190576125--