Home » Developer & Programmer » Application Express, ORDS & MOD_PLSQL » mod_plsql and j2ee app integration - how to synchronize user session timeout period
mod_plsql and j2ee app integration - how to synchronize user session timeout period [message #315559] Mon, 21 April 2008 21:25
baldie
Messages: 6
Registered: April 2008
Junior Member
Hello Guys,

I need some advice with regards to "inter-operability support" between two applications, more particularly a way to synchronized our session time out period between our existing mod_plsql based application and a new j2ee based application which i am currently working on.


So basically our entire product is based on mod_plsql with the entire implementation existing in stored-procedures, also we have our own custom plsql based authentication framework plus a session tracking framework which identifies an authenticated user request through sessionId passed on each request (the sessionId is generated on succesfull authentication and is used to keep track of logged in user). These frameworks are all implemented in plsql. No HttpSession or JSESSION nothing at all..

The same Session Tracking framework is also responsible for managing the user session timeout functionality, where they store all logged in user session info in a table such as sessionID, lastAccessTime (used for managing timeout), userId and other stuff..

Now i am working on a new j2ee module to be deployed on OC4J, which is to be integrated with out existing mod_plsql apps, also my app have use cases where the control would go to the plsql apps and vice-versa. So among others issues (for which we have somewhat found solutions too) to support inter-operability, one of the issue which we are currently stuck in, is how to keep session timeout synchronized between the applications, where in the servlet based app, it is managed by the http server and in the mod_plsql case by our own custom implementation where every call updates the lastAccessTime entry in their Session Table.

I came up with rather a hack, but something i thought would still work unless we move on to a more flexible approach, and that was to cross reference each other resources in our correspending html templates for each apps, so e.g. their application or html pages contain a reference to an http resources in my application context (e.g. a small 1 pixel image, dummy js, or even servlet which does nothing) similary my application html pages refer one of their context resource...this way whenever a page is rendered both the servers are pinged and they update their session (for the servlet app it was rather seemless and was managed by the http/servlet container, for the mod_plsql apps, still it wasnt really an issue since they were already intercepting each request and updating the timeout period anyways)...so this would have worked perfectly....BUT unfortunately this solution would fail with the usage of AJAX components (which we are heavily in both the apps) since we plan to cross refer each others http resources at a common place, such as a header,footer or any common include....which wouldnt re-rendered on every request


I am looking for some ideas to solve the above problem...

Thanks in advance..
Previous Topic: Report Query Problem
Next Topic: how to implement single sign on in APEX
Goto Forum:
  


Current Time: Wed Dec 04 19:58:06 CST 2024