You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Balaji <ba...@india.adventnet.com> on 2003/03/31 11:20:21 UTC

Deploying a HttpSessionListener

Hi,

I'm trying to write a sample session listener for Tomcat 4.1.18 . The code 
is as follows.

package com.myCompany;
import javax.servlet.http.*;
public class SessionCounter implements HttpSessionListener
{
         private static int activeSessions = 0;
         public SessionCounter()
         {
         }
         public void sessionCreated(HttpSessionEvent se)
         {
                 System.out.println("A new Seeion is being created");
                 activeSessions++;
         }
         public void sessionDestroyed(HttpSessionEvent se)
         {
                 if(activeSessions > 0)
                         activeSessions--;
         }
         public static int getActiveSessions()
         {
                 System.out.println("The activeSession number is 
"+activeSessions);
                 return activeSessions;
         }
}

Am I right in saying that I need to add this listener to the server.xml 
file ? If I do so, I get the following Exception. Can anyone help me 
getting it to work?

Thanks
Bala

java.lang.IllegalArgumentException: argument type mismatch
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at 
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.jav
a:228)
         at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:260)
         at org.apache.commons.digester.Digester.endElement(Digester.java:1036)
         at 
org.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXPar
ser.java:585)
         at 
org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Abst
ractXMLDocumentParser.java:222)
         at 
org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(XMLNamespaceBi
nder.java:595)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElemen
t(XMLDocumentFragmentScannerImpl.java:747)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent
Dispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1477)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XM
LDocumentFragmentScannerImpl.java:329)
         at 
org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav
a:525)
         at 
org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav
a:581)
         at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152)
         at 
org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.j
ava:1175)
         at org.apache.commons.digester.Digester.parse(Digester.java:1495)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:449)
         at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
         at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
Catalina.start: java.lang.IllegalArgumentException: argument type mismatch
java.lang.IllegalArgumentException: argument type mismatch
         at 
org.apache.commons.digester.Digester.createSAXException(Digester.java
:2312)
         at 
org.apache.commons.digester.Digester.createSAXException(Digester.java
:2332)
         at org.apache.commons.digester.Digester.endElement(Digester.java:1039)
         at 
org.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXPar
ser.java:585)
         at 
org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Abst
ractXMLDocumentParser.java:222)
         at 
org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(XMLNamespaceBi
nder.java:595)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElemen
t(XMLDocumentFragmentScannerImpl.java:747)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent
Dispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1477)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XM
LDocumentFragmentScannerImpl.java:329)
         at 
org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav
a:525)
         at 
org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.jav
a:581)