Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 2.0.2
-
Component/s: Framework
-
Labels:None
-
Environment:ICEfaces 2.0.2, Liferay 6.0 EE sp1, Tomcat 6.0.29, AlloyFaces 1.0.1.0
-
Assignee Priority:P3
-
ICEsoft Forum Reference:
-
Affects:Compatibility/Configuration
-
Workaround Exists:Yes
-
Workaround Description:per neil griffin (http://www.portletfaces.org/community/forums/-/message_boards/message/57547), use <h:form styleClass="aui-form">
Description
I was trying to use <aui:form> to get the alloy styles applied, but when i did, icefaces failed to recognize the form and inject its ajax code.
I might need some additional clarification here. There is documentation about a aui:form tag provided by Liferay:
http://www.liferay.com/web/guest/community/wiki/-/wiki/Main/Alloy+UI+Forms+(aui)
http://alloy.liferay.com/
But this doesn't appear to be a JSF tag from what I can determine. If that's the aui:form that is being used, then, since it's not a JSF component with a renderer, it's not going to be possible for ICEfaces to find it in the component tree.
Neil does allude to an aui:form as port of AlloyFaces. I'm not the familiar with it but it appears that this provides component JSF versions/wrappers of the tags provided by Liferay so that they are represented as actual components.
Within ICEfaces, code is added to the form by wrapping the FormRenderer in what we call a FormBoost. It's detected on wrapped using the following logic. Does
Renderer renderer = "javax.faces.Form".equals(family) ? new FormBoost(r) : r;
In this case, perhaps the aui:form renderer is not declared to be of the javax.faces.Form family? (I haven't checked the AlloyFaces source). If not, then the FormBoost would not be applied.