Partner
Eoghain Anderson
Founder and Co-owner of Beezapps Ltd
Working with Oracle products for 10 years
9 years working with Oracle APEX, previously HTMLDB.
Utilise modern client script libraries like JQuery to create a rich user experience and reduce complexity.
Specifically build an interface with "central" pages with child pages opening off it as modal windows
Ensure the application is as secure as possible, making full use of all Apex security features
Build an Apex application with a client rich look and feel
Ensure that the check summing of URLs is performed by the server but the Navigation is handled by JQuery.
Use all Apex's builtin functionality to generate secure URLs but "steal" the URL values from the href attributes.
Eoghain Anderson
eoghain@beezapps.com
1. AFTER the page has rendered with all the checksums modify the URLS
2. Run a followup process to convert checksummed urls to dialog calls.
Simple...
Clean up the URLs so we are left with only the f?p url including any checksums.
i.e. no javascript wrapper functions
Apex uses server generated checksums on URLS to secure page linking and prevent URL tampering.
Page linking is therefore limited to client server round trips.
Wrap the URLs in a dialog functionto run the checksummed URLs in a iframe injected Dialog window.
You CANNOT generate a secure checksum
using JavaScript
Once the URLs have been wrapped in a dialog function put them back!
We do not secure our page branching....
Open Modal dialogs to other pages using standard (non checksummed) URLs
Report Binding.
Make sure when a report bind with all it's modified URLs that they are applied.
1. JQuery selector
2. PrepareDialog()
3. showDialog()
Client is a defense organisation. Security is of paramount importance.
Application security and Navigation using JavaScript JQuery do not seem compatible.
We have all regions we want to open as dialogs in regions on the same page that are initially hidden, displaying them as modal windows when needed.
For all code used in the demo please contact
Eoghain Anderson
eoghain@beezapps.com
Would cause excessive complexity on a single page.
Pushing values into session so that regions could be configured to the current user and current field values would become impractical to manage.
Number of items and regions on a single page would become very difficult to manage
We abandon the idea of rich client navigation using dialogs and opt for a simpler, more traditional design using page to page navigation..
One of the primary requirements for the project is to modernise and simplify the interface.
A rich client interface using dialogs is not optional!