Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Invalid
-
Affects Version/s: 3.3
-
Fix Version/s: 4.0.BETA, EE-3.3.0.GA_P02, 4.0
-
Component/s: ACE-Components
-
Labels:None
-
Environment:JBoss EAP 6
-
Assignee Priority:P1
-
Salesforce Case Reference:
Description
The problem has been traced to ice.ace.util.isEventSourceInputElement in util.js. The menu has an anchor with a child span that is identified as the event source.
-
- ICE9340.txt
- 3 kB
- Brad Kroeger
-
Hide
- Test.war
- 7.67 MB
- Brad Kroeger
-
- META-INF/MANIFEST.MF 0.0 kB
- WEB-INF/classes/CrListBean.java 6 kB
- WEB-INF/classes/CrListDataTableBean.java 2 kB
- WEB-INF/.../CrListDataTableBean1.java 0.2 kB
- WEB-INF/.../CrListDataTableBean2.java 0.2 kB
- WEB-INF/classes/CrListService.java 0.3 kB
- WEB-INF/classes/CrListServiceImpl.java 3 kB
- WEB-INF/.../DataTableBaseViewBean.java 6 kB
- WEB-INF/classes/FacesUtils.java 13 kB
- WEB-INF/classes/GlobalBean.java 3 kB
- WEB-INF/classes/McpController.java 4 kB
- WEB-INF/.../SelectAllCheckboxDataTableBean.java 1 kB
- WEB-INF/classes/Tab.java 1 kB
- WEB-INF/classes/.../messages_en.properties 81 kB
- WEB-INF/classes/CrListBean.class 6 kB
- WEB-INF/.../CrListDataTableBean.class 3 kB
- WEB-INF/.../CrListDataTableBean1.class 0.4 kB
- WEB-INF/.../CrListDataTableBean2.class 0.4 kB
- WEB-INF/classes/CrListService.class 0.4 kB
- WEB-INF/classes/CrListServiceImpl.class 3 kB
- WEB-INF/.../DataTableBaseViewBean$OnePageDataModel.class 1 kB
- WEB-INF/.../DataTableBaseViewBean.class 5 kB
- WEB-INF/classes/FacesUtils.class 10 kB
- WEB-INF/classes/GlobalBean.class 3 kB
- WEB-INF/classes/McpController.class 4 kB
- WEB-INF/.../SelectAllCheckboxDataTableBean.class 2 kB
- WEB-INF/classes/Tab.class 1 kB
- WEB-INF/faces-config.xml 0.6 kB
- WEB-INF/lib/icefaces-ee-ace.jar 4.29 MB
- WEB-INF/lib/icefaces-ee-ext.jar 62 kB
-
Hide
- Test.war
- 7.20 MB
- Brad Kroeger
-
- META-INF/MANIFEST.MF 0.0 kB
- WEB-INF/classes/CrListBean.java 5 kB
- WEB-INF/classes/CrListDataTableBean.java 3 kB
- WEB-INF/classes/CrListService.java 0.3 kB
- WEB-INF/classes/CrListServiceImpl.java 1 kB
- WEB-INF/.../DataTableBaseViewBean.java 6 kB
- WEB-INF/classes/FacesUtils.java 13 kB
- WEB-INF/classes/GlobalBean.java 3 kB
- WEB-INF/classes/McpController.java 4 kB
- WEB-INF/classes/Tab.java 1 kB
- WEB-INF/classes/.../messages_en.properties 81 kB
- WEB-INF/classes/CrListBean.class 6 kB
- WEB-INF/.../CrListDataTableBean.class 5 kB
- WEB-INF/classes/CrListService.class 0.4 kB
- WEB-INF/classes/CrListServiceImpl.class 2 kB
- WEB-INF/.../DataTableBaseViewBean$OnePageDataModel.class 1 kB
- WEB-INF/.../DataTableBaseViewBean.class 5 kB
- WEB-INF/classes/FacesUtils.class 10 kB
- WEB-INF/classes/GlobalBean.class 3 kB
- WEB-INF/classes/McpController.class 4 kB
- WEB-INF/classes/Tab.class 1 kB
- WEB-INF/faces-config.xml 0.6 kB
- WEB-INF/lib/icefaces-ace.jar 4.02 MB
- WEB-INF/lib/icefaces.jar 580 kB
- WEB-INF/lib/icepush.jar 194 kB
- WEB-INF/lib/javax.faces.jar 2.47 MB
- WEB-INF/lib/jstl.jar 405 kB
- WEB-INF/web.xml 2 kB
- base_template.xhtml 3 kB
- change-request.xhtml 6 kB
-
- WithoutICE9340.txt
- 4 kB
- Brad Kroeger
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
Right now ice.ace.util.isEventSourceInputElement checks to see if the event source/target is an anchor / button tag, whereas it would need to walk up the parent hierarchy and see if it is in an anchor / button, that is not itself the element that we're trapping on with isEventSourceInputElement.
Added the logic, and intentionally changing tabs works, as well as summoning the menu, all with the proper singular submits.
icefaces3 trunk
Subversion 36663
Tested this in a client application. When selecting other tabs the tab content is no longer changed. It appears that previously, the second post was sending back the new tab content.
Attaching a test war file.
Also attaching files with output from firebug showing the result of the post in both cases (for diffing). I haven't included the result of the second post in the file withoutICE9340.txt
Brad, please describe the steps needed for reproducing the problem.
- Deploy Test.war to Tomcat 7
- http://localhost:8080/Test/home.jsf will present you with a tabset - the second tab header contains a menu.
- In the second tab if you select 'Change Request List' you should see the tab change to the second tab and an ace:dataTable in the tab cotnent, but nothing changes in the browser.
To me it looks like the application and components behave normally. In order to see the content change in the second tab one needs to select the tab first. Once selected the content will change when the menu in the label facet is used.
If the expected behaviour is to switch to the second tab when the menu is used then McpController bean needs to have access to the GlobalBean to change the selected tab index (using GlobalBean.setVisibleTab).
Attached test application that can be run on Tomcat 7. Hover over the 'My Customer Pricing' tab, select the 'Change Request List' menu item and you should see the two posts performed with the source event coming from the span tag.