Skip Headers
Oracle® Application Express Administration Guide
Release 3.2

Part Number E12512-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

Managing Session State and User Preferences

A session is a logical construct that establishes persistence (or stateful behavior) across page views. Each session is assigned an unique ID, which the Application Express engine uses to store and retrieve an application's working set of data (or session state) before and after each page view. Sessions persist in the database until purged.

Topics in this section include:

Managing Session State

A session establishes persistence (or stateful behavior) across page views. You can review session details for the current session or for recent sessions. You can also purge the current session state or purge sessions based on their age.

Topics in this section include:

Removing Session State After Reviewing Session Details

You can determine whether to remove existing sessions by first reviewing session details. From the Session Details page, you can then remove the session record or session state.

To view session details and remove session state:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Session State.

  4. Click Recent Sessions with Drill-Down to Session Details.

  5. To narrow the results, select a time frame, specify a user, and click Go.

  6. To view session details, select the session ID.

    The Session Details page appears.

  7. Click one of the following buttons:

    • Remove Session removes the record of the session from the SESSIONS table along with the session state (including collections data) associated with the session.

      Any user using a session that is removed will no longer be able to use the session and will be prompted to re-authenticate upon their next page request (in most situations). This option can be used by administrators who need to ensure a specific user can no longer access an Oracle Application Express application.

    • Remove State clears the session data from the session state tables (including collections data) but does not remove the session record. Removing a session is a good approach for developers during debugging.

      This is the equivalent of clearing session state for the current session using the Clear Cache argument value SESSION in the f?p URL. This option might also be used by developers during debugging.

See Also:

"Debugging an Application" in Oracle Application Express Application Builder User's Guide

Viewing Session State Details

To view session state for the current or recent sessions:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Session State.

  4. On the Manage Session State page:

    • To view information about the current session, click Report Session State for Current Session. To search for an item in the details, enter the item and click Go.

    • To view a list of recent sessions, click Recent Sessions with Drill-Down to Session Details.

Purging Session State for the Current Session

To purge session state for the current session:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Session State.

  4. On the Manage Session State page, click Purge Session State for Current Session.

  5. From the Purge Session State page:

    • To view information about the current session, click View Session State.

    • To reset the session state for the current session, click Purge Session State.

Purging Sessions by Age

To purge existing sessions by age:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Session State.

  4. Select Purge sessions by Age.

  5. Make a selection from the Sessions older than list.

  6. Click one of the following buttons:

    • Report Sessions generates a report detailing the total number of sessions for the workspace, the number of users, and the number of old sessions.

    • Purge Sessions purges existing sessions by the age you selected.

Managing User Preferences

You can use preferences to store values for a specific Application Express user across distinct sessions. Once set, these preferences can be removed programmatically or manually. You can set user preferences by creating a page process, by the calculation of a preference Item Source Value, or programmatically by using a PL/SQL API.

Topics in this section include:

Viewing and Resetting Preferences for the Current User

To manage user preferences for the current user:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Preferences.

    The Manage Preferences page appears.

  4. To view preference information about the current user, click Report Current User Preferences.

    The Current User Preferences page appears.

  5. To view and reset preferences for the current user, click Purge Preferences for Current User. On the Purge Preferences page, click the appropriate button:

    • Reset Preferences

    • View Preferences

Viewing Preferences by User

To view the preferences for specific users:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Preferences.

    The Manage Preferences page appears.

  4. To view preference information about a specific user, click Preferences by User.

    Use the search bar at the top of the page to narrow the display.

  5. To view and reset preferences for the current user:

    1. Click Purge Preferences by User.

    2. Select a user from the list and click Report.

      A report appears.

    3. To purge user preferences, click Purge User Preferences.

Setting User Preferences

You can set user preferences within your application through the creation of a page process, by creating a preference item, or programmatically.

Topics in this section include:

Setting User Preferences Using a Page Process

To set user preference values by creating a page process:

  1. Navigate to the appropriate Page Definition. See "Accessing a Page Definition" in Oracle Application Express Application Builder User's Guide.

  2. Under Processes, click the Create icon.

    The Create Page Process Wizard appears.

  3. For the process category, select Session State.

  4. For the process type, select one of the following:

    • Set Preference to value of item

    • Set Preference to value of item if item is not null

  5. Specify a process name, sequence, and processing point.

  6. Specify the preference value in the field provided using the format:

    PreferenceName:Item
    
  7. Click Page Items to see a list of available items.

  8. Click Create Process.

Setting the Source of an Item Based on a User Preference

You can set the source of an item based on a user preference by defining the item source type as Preference.

To define the source of item based on a user preference:

  1. Navigate to the appropriate Page Definition. See "Accessing a Page Definition" in Oracle Application Express Application Builder User's Guide.

  2. Under Items, click the Create icon.

    The Create Item Wizard appears.

  3. For the item type, select Hidden.

  4. Specify the Item Name, sequence, and region.

  5. From the Item Source list, select Preference.

  6. In Item Source Value, enter the name of the preference.

  7. Click Create Item.

Setting User Preferences Programmatically

To set or reference user preferences programmatically, you must use a PL/SQL API. User-level caching is available programmatically. You can use the SET_PREFERENCE procedure to set a user level preference called NAMED_PREFERENCE. For example:

APEX_UTIL.SET_PREFERENCE(
 p_preference=>'NAMED_PREFERENCE',
 p_value =>:ITEM_NAME);

You can reference the value of a user preference using the function GET_PREFERENCE. For example:

NVL(APEX_UTIL.GET_PREFERENCE('NAMED_PREFERENCE'),15)

In the previous example, the preference would default to the value 15 if the preference contained no value.

See Also:

"GET_PREFERENCE Function and "SET_PREFERENCE Procedure in Oracle Application Express Application Builder User's Guide

Removing User Preferences Programmatically

To remove user preferences programmatically, you must use a PL/SQL API. You can use the REMOVE_PREFERENCE procedure to remove a user level preference called NAMED_PREFERENCE. For example:

APEX_UTIL.REMOVE_PREFERENCE(
p_preference=>'NAMED_PREFERENCE');

Resetting User Preferences Using a Page Process

You can reset user preferences by creating a page process and selecting the Reset Preferences process type.

To reset user preferences using a page process:

  1. Navigate to the appropriate Page Definition. See "Accessing a Page Definition" in Oracle Application Express Application Builder User's Guide.

  2. Under Processes, click the Create icon.

    The Create Page Process Wizard appears.

  3. For the process category, select Session State.

  4. From Type, select Reset Preferences.

  5. Specify a process name, sequence, and process point.

  6. Follow the on-screen instructions.

Purging Preferences for a Specific User

You can purge preferences for a specific user on the Purge Preferences page.

To purge preferences for a specific user:

  1. Navigate to the Workspace home page.

  2. Click Manage Services on the Administration list.

    The Manage Services page appears.

  3. Under Session State, click Manage Preferences.

  4. Click Purge preferences by User.

    The Purge Preferences page appears.

  5. Select a specific user and click Report.

    A report appears at the bottom of the page.

  6. To purge the displayed user preferences, click Purge User Preferences.