Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 3.1
-
Fix Version/s: EE-3.2.0.BETA, EE-3.2.0.GA, 3.3
-
Component/s: ACE-Components
-
Labels:None
-
Environment:ICEfaces 3.1, Chrome, Firefox, IE
-
Assignee Priority:P1
Description
Source code attached.
To reproduce:
1. Deploy and access sample application default page.
2. From the main page:
2.1. Click link Navigate Externally to Tabs Wrapper (via html link) --> Selecting the date component in the tabSet works, and the date select pannel is enabled
2.2. Click button Navigate internally to date component (via command button post redirect) --> When landing on the page selecting the date component no selection pannel is rendered
-
- Case11602.rar
- 22 kB
- Evgheni Sadovoi
-
Hide
- case11602.zip
- 24 kB
- Evgheni Sadovoi
-
- web/index.xhtml 3 kB
- web/META-INF/context.xml 0.1 kB
- web/.../baseTestTabsWrapper.xhtml 2 kB
- web/tabswrapper/tab1.xhtml 0.7 kB
- web/tabswrapper/tab2.xhtml 0.6 kB
- web/tabswrapper/tab3.xhtml 0.5 kB
- web/WEB-INF/faces-config.xml 3 kB
- web/WEB-INF/web.xml 2 kB
- web/working/include1.xhtml 2 kB
- web/working/include2.xhtml 1 kB
- web/working/includeCommon.xhtml 0.5 kB
- web/working/targetPage.xhtml 2 kB
- build.xml 3 kB
- nbproject/ant-deploy.xml 3 kB
- nbproject/build-impl.xml 58 kB
- nbproject/faces-config.NavData 0.2 kB
- nbproject/genfiles.properties 0.5 kB
- nbproject/private/private.properties 0.4 kB
- nbproject/private/private.xml 0.5 kB
- nbproject/project.properties 3 kB
- nbproject/project.xml 1 kB
- src/conf/MANIFEST.MF 0.0 kB
- src/java/.../managedBeans/PanelTab.java 0.6 kB
- src/java/example/managedBeans/Tab.java 0.1 kB
- src/java/.../managedBeans/TestBean.java 4 kB
- src/java/.../TestTabsManagerFB.java 1.0 kB
- src/java/example/model/TestDTO.java 0.6 kB
-
- ICE-8562-fixed.rar
- 22 kB
- Migration
-
- oldNode.txt
- 22 kB
- Migration
-
- screenshot-01.png
- 168 kB
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Another similar case: http://jforum.icesoft.org/JForum/posts/list/15/21571.page#76150.
Tested wrapping group panel with common id as mentioned by Mark. Working.
After much tracing and debugging, found that there is nothing wrong with the component.
This is yet another case of the same old issue of the framework DOM updates messing up the client-side states.
The popup is created dynamically on the client side. (It is a div attached to the body.) Seems the popup is shared among calendar instances. The calendar instances and the shared popup are managed by a singleton manager. In this scenario the framework just comes along and wipe out the whole body, without the manager knowing.
This can't just be solved like before using a hash code to force DOM diff. to update properly. You need to tell the manager you are wiping out HTML under its control. Even then there may not be an easy fix. Seems the manager works by assuming that the popup is created/initialized only once per jquery-ui.js load, i.e. the framework needs to reload jquery-ui.js or at least the datepicker portion of the jquery-ui.js.
Tried hardcoding to force manager to re-create the popup for the second calendar instance in this scenario and it seemed to work. See video http://screencast.com/t/K0M6bqnF. Need to find a way to make this work without creating a host of other problems in this or other scenarios.
Assigning to Yip for further review. The bug is critical for our customer.
(Restricted to icesoft-internal-developers group)
ICE-8970,ICE-9455.