3 Replies Latest reply: Apr 14, 2011 11:20 AM by 505562 RSS

    How do I create a checksum when calling Apex form from Oracle Forms?


      I'm calling my Apex application from an Oracle Apps Forms funtion using the "SSWA plsql function" method to call a custom procedure to launch my Apex application. My problem is dealing with session state protection. I've enabled this (all items/pages need checksum) on all my Apex pages and items. It works great once I'm in the application. However, if I specify a checksum is required on my landing page, when I launch the page from Oracle Apps, I get the following error:

      "Session state protection violation: This may be caused by manual alteration of a URL containing a checksum or by using a link with an incorrect or missing checksum. If you are unsure what caused this error, please contact the application administrator for assistance."

      When looking at my URL, this makes sense: http://appsn3.fairisaac.com:8015/pls/apex/f?p=104:2:3454547186993089::::F104_LOOKUP_PREFIX:PDCT

      Because I have no checksum at the end of my URL, I'm getting the error. The problem is that I can't seem to generate the checksum for my URL before the Apex app launches. I tried doing it in the "SSWA plsql function" custom procedure I'm calling by generating the URL using APEX_UTIL.PREPARE_URL and passing through 'SESSION' for the p_checksum_type parameter, but the checksum comes up blank. This makes sense to me because I haven't launched the APEX page yet, and therefore do not have the Apex session value. My other idea was to call the APEX_UTIL.PREPARE_URL from the Authentication Scheme's "Post-Authentication Process" and essentially redirect to the application, but, despite having the session value at this point, my URL still did not contain a checksum.

      Seems like this would be an issue commonly encountered when launching Apex from Oracle Forms, but I can't seem to find a solution. Any help would be appreciated.