[ 
https://issues.apache.org/jira/browse/AXIS-2206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12688786#action_12688786
 ] 

Olaf Krische commented on AXIS-2206:
------------------------------------

There is definitly a difference between spec 2.3 and 2.4

Quoting servlet api spec 2.4 (SRV 1.6.1, sessionDestroyed)

---snip---
In the previous versions of the specification, this method was defined as:

             Notification that a session was invalidated.

As of Version 2.4, this method is changed to

             Notification that a session is about to be invalidated

so that it notifies before the session invalidation. 

If the code assumed the previous behavior, it must be modified to match the new 
behavior.
---snip---


> use of session.getAttribute on HttpSession expiration
> -----------------------------------------------------
>
>                 Key: AXIS-2206
>                 URL: https://issues.apache.org/jira/browse/AXIS-2206
>             Project: Axis
>          Issue Type: Bug
>          Components: Basic Architecture
>    Affects Versions: 1.2.1
>         Environment: tomcat 4.1.30 / Windows 2000 / JDK sun 1.4.2_06
>            Reporter: nicolas de loof
>            Priority: Minor
>
> from a Tomcat server runing Axis 1.2.1, I get stack trace on console :
> java.lang.IllegalStateException: "getAttribute": Session déjà invalidée
>    at 
> org.apache.catalina.session.StandardSession.getAttribute(StandardSession.java:953)
>    at 
> org.apache.catalina.session.StandardSessionFacade.getAttribute(StandardSessionFacade.java:171)
>    at 
> org.apache.axis.transport.http.AxisHTTPSessionListener.destroySession(AxisHTTPSessionListener.java:43)
>    at 
> org.apache.axis.transport.http.AxisHTTPSessionListener.sessionDestroyed(AxisHTTPSessionListener.java:72)
>    at 
> org.apache.catalina.session.StandardSession.expire(StandardSession.java:658)
>    at 
> org.apache.catalina.session.StandardSession.expire(StandardSession.java:607)
>    at 
> org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:793)
>    at 
> org.apache.catalina.session.StandardManager.run(StandardManager.java:870)
>    at java.lang.Thread.run(Thread.java:534)
> In AxisHTTPSessionListener, on sessionDestroyed event, static 
> destroySession() is called. It uses getAttribute on session to search for 
> AXIS_SESSION_MARKER. As session is currently invalidated, this exception 
> occurs. 
> It may be possible to use a HttpSessionBindingListener having references to 
> ServiceLifecycle instances and call destroy when session expires/invalidates.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to