Salve a tutti,
come da oggetto sto cercando di implementare l'interfaccia HttpSessionListener per avere il metodo sessionDestroyed() che mi faccia determinate operazioni. Ho provato a segiure le indicazioni di quest'altra
discussione, ma quando provo a creare la classe in questo modo:
codice:
public final class SessionListener implements
HttpSessionListener {
public void sessionDestroyed(HttpSessionEvent sessionEvent) {
HttpSession sessione = sessionEvent.getSession();
String user = (String) sessione.getAttribute("username");
XmlManipulator logout = new XmlManipulator();
logout.loginLogout(Config.PUBLIC_XML_DIR+"utentiRegistrati.xml", user);
}
}
netbeans mi segnala subito questo errore:
codice:
twi312.servlets.SessionListener is not abstract and does not override abstract method sessionCreated(javax.servlet.http.HttpSessionEvent) in javax.servlet.http.HttpSessionListener
Allora ho provato così:
codice:
public abstract class SessionListener implements
HttpSessionListener {
public void sessionDestroyed(HttpSessionEvent sessionEvent) {
HttpSession sessione = sessionEvent.getSession();
String user = (String) sessione.getAttribute("username");
XmlManipulator logout = new XmlManipulator();
logout.loginLogout(Config.PUBLIC_XML_DIR+"utentiRegistrati.xml", user);
}
}
ma in questo modo in fase di runtime ottengo quest'altro errore:
codice:
GRAVE: Error configuring application listener of class twi312.servlets.SessionListener
java.lang.InstantiationException
at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:30)
A questo punto non so più cosa devo fare.
Qualcuno sa darmi qualche indicazione?
p.s. al file web.xml ho aggiunto la classe listener dentro ai relativi tag.