Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Requestor scope data pages do not flush after application switch

SA-72531

Summary



Requestor scope data pages do not flush after switching applications.


Error Messages



Not Applicable


Steps to Reproduce

  1. Create the DMSample2 application.
  2. Create the DMSample:Administrators2 AccessGroup that refers to the DMSample2 application.
  3. Add to the operator both the AccessGroups, DMSample:Administrators and DMSample:Administrators2.
  4. Add the DMSample branch to the DMSample application. Add the DMSample2 branch to the DMSample2 application.
  5. In the main DMSample:07-10 RulesSet, create the D_DataPage (data page) Requestor Scope with an empty SetDataPage data transform.
  6. Create the SetDataPage data transform in the DMSample branch and set pyLabel=SetDataPage.
  7. Create the SetDataPage data transform in the DMSample2 branch and set pyLabel=SetDataPage2.
  8. Reference the D_DataPage anywhere in the UI or logic for initialization. The case consists of referencing the pyLabel on the UI and the preload activity in the layout that sets pyLabel = D_DataPage.pyLabel.

    a. Log in with DMSample:Administrators on the UI. The correct label 'SetDataPage' displays. Switch the application to DMSample:Administrators2 on the UI. The correct label 'SetDataPage' displays.

    b. Log in with DMSample:Administrators2 on UI. The correct label 'SetDataPage2' displays. Switch the application to DMSample:Administrators on the UI. The correct label 'SetDataPage2' displays.


Root Cause



An issue in the custom application code or rules.


Resolution



Perform the following local-change:

In Pega 7 Platform versions, all the clean-up occurs on the application switch. This is handled by the FreeClipboard activity.

This activity cleans up the PRThread and removes the Thread pages (User pages and Editable pages) in a Java step by iterating over and removing them from tools.getThread().getPageNames().

The ApplicationFreeClipboard extension point is available to add the clean-up logic to clear any named top level pages that are added.

Use either of the following:
  • tools.removeDataPage(aPageName)
  • boolean removeDataPage(String aDataPageName, ParameterPage aParamPage); for parameterized pages. 

Published October 8, 2020

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us