Hi all,
for the last couple of weeks I've been trying to figure out a very
strange problem we are seeing at UBC
with 2.5.3 and I've reached the point where I'm stumped and need some
JVM expert input.
The problem we have is that a couple of times a day, a user logs in to
myUBC, but somewhere in the
LoginServlet stack the Person object is not fully initialized so we end
up with a logged in user
that has the "guest" user id.
Since I have no idea how to duplicate the problem under the debugger
I've been adding log.info()
lines right, left and, center. I've gained some insight as to what
appears to be happening, I'm not
any closer to understand what is going on.
The logs show the user being authenticated by our CWLSecurityContext,
but then something goes hay-wire
and somehow the call stack is unraveled, and after a delay of 20-120
seconds, we come back into the
UserInstance and as far as the user is concerned he/she is logged in,
except uPortal sees the person as "guest" internally.
I finally added a bunch if "finally" statements like so:
LoginServlet:
try {
m_authenticationService.authenticate():
try {
securityContext.authenticate();
} finally {
log.info(...);
}
} finally {
log.info(...);
}
The really weird part is that both "finally" blocks are not executed????
How is this possible? I thought the JVM guaranteed that a finally block
will be execute.
Is there anything the Spring framework might be doing to unravel the
call stack??
Thanks
George
--
[EMAIL PROTECTED] ITServices, UBC
Senior Programmer Analyst
phone: 604.822.4375 fax: 604.822.5116
cell: 604.313.7457
--
You are currently subscribed to [email protected] as: [EMAIL
PROTECTED]
To unsubscribe, change settings or access archives, see
http://www.ja-sig.org/wiki/display/JSG/uportal-dev