Well, I feel silly now, but 10 seconds after I sent the email to the list, I looked back at my Class and noticed that I had declared it Abstract. Once I removed the "abstract" declaration and recompiled it all works as expected. Thanks for your time.
-Jason On 5/9/06, Mike Sabroff <[EMAIL PROTECTED]> wrote:
Disreguard my previous statement as I am obviously brain dead....sorry Mike Sabroff wrote: > If this is truly what your web.xml looks like, you are missing the end > tag '>' in the following line > <filter-class>com.affinity.tasc.filters.AuthenticateFilter > > Jason Beck wrote: >> >> 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 >> changes >> 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 --> >> <filter> >> <filter-name>AuthenticateFilter</filter-name> >> <filter-class>com.affinity.tasc.filters.AuthenticateFilter >> </filter-class> >> </filter> >> <filter-mapping> >> <filter-name>AuthenticateFilter</filter-name> >> <servlet-name>Index</servlet-name> >> </filter-mapping> >> >> <servlet> >> <servlet-name>Index</servlet-name> >> <servlet-class>com.affinity.tasc.core.Index</servlet-class> >> </servlet> >> <servlet-mapping> >> <servlet-name>Index</servlet-name> >> <url-pattern>/Index</url-pattern> >> </servlet-mapping> >> >> <-- 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 = >> (HttpServletRequest)req; >> HttpServletResponse response = >> (HttpServletResponse)res; >> >> HttpSession session = request.getSession (false); >> >> if >> (request.getParameter("Authenticate").equals("1")) >> { >> >> try { >> SiteUserBean user = new >> SiteUserBean(); >> user.setUsername( >> request.getParameter("username")); >> user.setPassword( >> request.getParameter("password")); >> >> int authed = >> 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 = filterConfig; >> } >> >> public void destroy() { >> this.fc = 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 >> filterStart >> 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.<init>( >> 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.java >> :442) >> at org.apache.catalina.core.StandardService.start( >> StandardService.java:450) >> at >> org.apache.catalina.core.StandardServer.start(StandardServer.java >> :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.WebappClassLoaderloadClass >> 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.RegistryregisterComponent >> SEVERE: Null component Catalina:type=JspMonitor,name=jsp,WebModule=//sa- >> test.valueweb.net/servlets-examples,J2EEApplication=none,J2EEServer=none >> May 9, 2006 11:46:33 AM >> org.apache.catalina.startup.HostConfigdeployDirectory >> 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(Unknown >> Source) >> at >> org.apache.xerces.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch (Unknown >> >> 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.java >> :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.java >> :442) >> at org.apache.catalina.core.StandardService.start( >> StandardService.java:450) >> at >> org.apache.catalina.core.StandardServer.start(StandardServer.java >> :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=0 time=0/25 config=null >> May 9, 2006 11:46:34 AM org.apache.catalina.storeconfig.StoreLoaderload >> 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. >> > -- Mike Sabroff Web Services Developer [EMAIL PROTECTED] 920-568-8379 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]