Bug #1107 (closed)
Opened 11 years ago
Closed 11 years ago
client.joinSession() throws an "internal server error" if session expired.
| Reported by: | jamoore | Owned by: | jamoore |
|---|---|---|---|
| Priority: | minor | Cc: | cxallan |
| Sprint: | n.a. | ||
| Total Remaining Time: | n.a. |
Description
Rejoining an expired session produces the following:
>>> c1 = omero.client(["--Ice.Config=ice.config"])
10/01/08 09:07:46.434 warning: deprecated property: Ice.MonitorConnections
>>> s2 = c1.joinSession(s1.uuid.val)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/home/josh/root/opt/bedge/now/lib/omero/__init__.py", line 69, in joinSession
return self.createSession(session, session)
File "/home/josh/root/opt/bedge/now/lib/omero/__init__.py", line 98, in createSession
session = router.createSession(username, password)
File "/usr/lib64/python2.4/site-packages/Ice/Glacier2_Router_ice.py", line 104, in createSession
return _M_Glacier2.Router._op_createSession.invoke(self, ((userId, password), _ctx))
Glacier2.CannotCreateSessionException: exception ::Glacier2::CannotCreateSessionException
{
reason = internal server error
}
but on the server the exception is:
ome.conditions.SecurityViolation: No known user:023aeed4-85a3-43a0-9181-08ba309272f7
at ome.services.sessions.SessionManagerImpl$5.doWork(SessionManagerImpl.java:674)
at sun.reflect.GeneratedMethodAccessor369.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.sup
Change History (1)
comment:1 Changed 11 years ago by jmoore
- Resolution set to fixed
- Status changed from new to closed
Note: See
TracTickets for help on using
tickets.
You may also have a look at Agilo extensions to the ticket.
This was due to session closure. Since the session uuid is passed in as Prinicipal.name it was possible for PermissionsVerifier to let a session start, but then for SessionManager not be able to find it. This is now wrapped in try/catch blocks.