Reordering Tabs at Runtime in a Custom WebCenter Portal Application removes Tabs (Doc ID 1348167.1)

Last updated on JUNE 30, 2017

Applies to:

Oracle WebCenter Portal - Version 11.1.1.4.0 to 11.1.1.5.0 [Release 11g]
Information in this document applies to any platform.

Symptoms


When attempting to reorder Tabs at runtime in a custom WebCenter Portal Application, all the tabs except for the first Tab are removed and the following error occurs.


ERROR

[2011-05-24T22:16:19.575-04:00] [DefaultServer] [ERROR] [] [oracle.adfinternal.view.page.editor.settingspanel.custom.paneltabbed.PanelTabbedImpl] [tid: [ACTIVE].ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: 1ad27e2c446f7331:22f5e9b9:13024ab7159:-8000-00000000000002a3,0] [APP: WC_3_3632705961_App1#V2.0] [[
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at oracle.mds.internal.update.ChangeList.optimizeListMoveEvents(ChangeList.java:1585)
at oracle.mds.internal.update.ChangeList.combineMoveEvent(ChangeList.java:1839)
at oracle.mds.internal.update.ChangeList.addEvent(ChangeList.java:900)
at oracle.mds.core.ChangeHandler.handleChangeEvent(ChangeHandler.java:538)
at oracle.mds.internal.model.event.ChangeEventDispatcherUtil.dispatchEvent



STEPS
-----------------------
The issue can be reproduced at will with the following steps:

  1. Create a WebCenter Portal Application in Jdeveloper (Custom portal).

  2. Create a page (Page1) based in the globe template.

  3. In the Component Palette, select ADF Faces and drag a Panel Stretch Layout component onto the page.

  4. In the Component Palette, select Oracle Composer.

  5. Add a Page Customizable component to the center facet of the Panel Stretch Layout.

  6. In the Structure window, within the top facet of the Panel Stretch Layout that you added in the previous section, drag a Change Mode Link component.

  7. Drag a Layout Customizable component to the Structure window and drop it inside the Panel Customizable component.

  8. Resize the components to give space to add tabs later (e.g. resize the af:panelStretchLayout, center facet and pe:pageCustomizable components).

  9. Add the page to the page hierarchy by dragging the page to the Root node on pages.xml.

  10. Save the changes.

  11. Run the portal applciation by running the index.html.

  12. Login as weblogic user.

  13. Navigate to the page (Page1) in the browser.

  14. Enter "Edit" mode of the page.

  15. Select the wrench icon of one of the panels in the page and enable the "Show Tab Actions" display option.

  16. Add a tab to the panel.

  17. Click the edit icon for that panel (the wrench icon).

  18. Add two more tabs to make the total tab count 3 (Tab1, Tab2 and Tab3).

  19. Hit Apply.

  20. Select the tab in the middle (Tab2) of the order and using the down arrows move it to the bottom and hit apply.

  21. Now move Tab3 that is currently in the middle to the bottom and hit apply.

    This step will generate a "java.lang.IndexOutOfBoundsException: Index: 0, Size: 0" error and all the tabs except for the first to be removed.

    It seems to happen when you try to move the tab that was originally last in the list to the bottom.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms