Details
-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.2
-
Component/s: Sample Apps
-
Labels:None
-
Environment:ICEfaces 2 Comp Suite
-
Assignee Priority:P2
-
Affects:Sample App./Tutorial
Description
The Comp Suite sample application uses non-JSF-component markup in the templates files where an id is provided as an attribute. For example, in main-template.xhtml:
<span id="primary">
...
<ui:insert name="component-example"/>
</span>
This is deadly to portlet rendering because the ids cannot be namespaced and therefore cannot be guaranteed to be unique. While it may work in non-portlet applications, having ids that are not under JSF control could lead to other problems. The recommendation is to either:
- Remove the ids from the various <span> and <div> container tags. If they are being used for CSS, then consider style and class attributes instead.
- Switch to using JSF components like h:panelGroup so that the ids can be properly generated and namespaced by JSF and the PortletFaces Bridge.
<span id="primary">
...
<ui:insert name="component-example"/>
</span>
This is deadly to portlet rendering because the ids cannot be namespaced and therefore cannot be guaranteed to be unique. While it may work in non-portlet applications, having ids that are not under JSF control could lead to other problems. The recommendation is to either:
- Remove the ids from the various <span> and <div> container tags. If they are being used for CSS, then consider style and class attributes instead.
- Switch to using JSF components like h:panelGroup so that the ids can be properly generated and namespaced by JSF and the PortletFaces Bridge.
Activity
Deryk Sinotte
created issue -
Deryk Sinotte
made changes -
Field | Original Value | New Value |
---|---|---|
Salesforce Case | [] | |
Affects | [Sample App./Tutorial] | |
Assignee Priority | P3 | |
Assignee | Evgheni Sadovoi [ evgheni.sadovoi ] |
Ken Fyten
made changes -
Summary | Comp Suite templates should not have ids on non-component markup | Showcase templates should not have ids on non-component markup |
Salesforce Case | [] | |
Fix Version/s | 3.1 [ 10312 ] | |
Assignee Priority | P3 | P2 |
Assignee | Evgheni Sadovoi [ evgheni.sadovoi ] | Carlo Guglielmin [ carlo.guglielmin ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #29753 | Thu Jun 28 14:02:56 MDT 2012 | carlo.guglielmin | |
Files Changed | ||||
MODIFY
/icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/showcase.xhtml
MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/resources/templates/main-template.xhtml MODIFY /icefaces3/trunk/icefaces/samples/showcase/showcase/src/main/webapp/showcase-nonredirect.xhtml |
Carlo Guglielmin
made changes -
Comment | [ r29753 - Changed all the divs and spans with IDs on them to h:panelGroups. ] |
Carlo Guglielmin
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Fix Version/s | 3.1.0.RC1 [ 10337 ] | |
Fix Version/s | 3.1 [ 10312 ] | |
Resolution | Fixed [ 1 ] |
Ken Fyten
made changes -
Fix Version/s | 3.1 [ 10312 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Ideally, only components would be used in the showcase and no markup at all.