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]