Sunday, 22 June 2014

APEX 5.0 - Rejoin Session

This great feature is finaly there. I remember asking for a solution back in 2007. I needed to send emails with application links to my users. If they would receive an email they would click on the link and were supposed to land on a particular page. The problem was that they would already have an open session and they expected the link to go straight to the page without asking for a new login. The solution I found was quite tricky and it stopped working with the version 4.1 because of the changed session handling. APEX 5.0 finaly introduces this option out of the box. You can enable it in the security attributes for:

- Public Sessions only
- All Sessions



You can of course override these settings on the page level, which makes a lot of sense.

6 comments:

  1. This may also assist a problem I see on tablets where opening a bookmark from the app screen will open a new tab, prompting re-login.

    As for emails with links in a workflow situation - the documentation seems to overstate the need for checksums if SSP is enabled. Hope it's as simple as it sounds.

    ReplyDelete
  2. After reading this post I tried using the rejoin session and I had success on a basic level but whenever I pass filter parameters in the url it is timing out my other sessions. Here are what my urls look like:

    Rejoin session works:

    localhost/ords/f?p=200:3:0:::::

    Causes other active sessions to time out:

    localhost/ords/f?p=200:3:0::::IR_SCHOOL:Test

    ReplyDelete
  3. Christopher,

    You should ask this in the forum:

    http://www.oracle.com/webfolder/technetwork/de/community/apex/index.html

    Denes

    ReplyDelete
  4. Ok, rejoin sessions work if URL does not contain
    any parameters exept application and page numbers,
    but if you have some inputs in target page to initialize,
    authentication fails and you are redirected to login page.
    The point is that control sum required when parameters are passing.
    Links from interactive reports unclude control sum, but from classic - not.
    Use apex_util.prepare_url call in order to generate url of target page,
    for example:
    select
    apex_util.prepare_url('localhost/ords/f?p=200:3:0::::IR_SCHOOL:Test', 'SESSION') as "LINK"
    from dual

    ReplyDelete
  5. Some corrections: apex_util.prepare_url have three parameters so example call will be:
    apex_util.prepare_url (
    p_url =>'localhost/ords/f?p=200:3:::::IR_SCHOOL:Test',
    p_checksum_type => 'SESSION' )

    ReplyDelete
  6. Hi,

    did somebody solve the problem with passing the parameter in the URL and using rejoin sessions?

    I fighting with the same issue.


    Bye Christian

    ReplyDelete