[jboss-user] [JBoss Seam] - s:decorate looses form values on validation error
utiba_davidr
do-not-reply at jboss.com
Thu Nov 29 20:52:44 EST 2007
Hey All,
I have been trying to get this to work for the last two days, a little disconcerting. I am sure its something I have done wrong but im not sure what it is. When I use the s:decorate component to display an inline error message, upon displaying the inline error message correctly the forms value is suddenly cleared. Standard input components not wrapped inside a s:decorate do not exhibit this problem so I don't believe its related to page flow or scope, but im not certain what the issue is.
The xhtml page is as follows:
(NB: This isn't the desired form layout, this is an example to prove that s:decorate was the issue and that standard inputText / outputText in a panel worked fine)
| <h:form id="registerAgentForm">
|
| <rich:panel>
| <f:facet name="header">Register Agent</f:facet>
|
| <h:panelGrid columns="2" rowClasses="prop" columnClasses="name,value">
|
| <h:column>
| <h:outputText value="Agent Reference:"/>
| </h:column>
| <h:column>
| <h:inputText id="agentref" value="#{agent.agentReference}" required="true"/>
| <s:decorate for="agentref" template="/WEB-INF/templates/layout/edit.xhtml"/>
| </h:column>
|
| <h:column>
| <h:outputText value="Name:"/>
| </h:column>
| <h:column>
| <h:inputText id="agentname" value="#{agent.name}" required="true"/>
| <s:decorate for="agentname" template="/WEB-INF/templates/layout/edit.xhtml"/>
| </h:column>
|
| </h:panelGrid>
|
| <s:decorate id="nicDecoration" template="/WEB-INF/templates/fragment/edit.xhtml">
| <ui:define name="label">NIC:</ui:define>
| <h:inputText id="nic" value="#{agent.nic}" required="true"/>
| </s:decorate>
|
| <div style="clear:both"/>
| </rich:panel>
|
| <h:commandButton type="submit" value="Register" action="#{manageAgentAction.register}"/>
|
| </h:form>
|
The contents of edit.xhtml (pretty standard implementation) are as follows:
| <ui:composition xmlns="http://www.w3.org/1999/xhtml"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:h="http://java.sun.com/jsf/html"
| xmlns:f="http://java.sun.com/jsf/core"
| xmlns:s="http://jboss.com/products/seam/taglib">
|
| <div class="prop">
|
| <s:label styleClass="name #{invalid?'errors':''}">
| <ui:insert name="label"/>
| <s:span styleClass="required" rendered="#{required}">*</s:span>
| </s:label>
|
| <span class="value #{invalid?'errors':''}">
| <s:validateAll>
| <ui:insert/>
| </s:validateAll>
| </span>
|
| <s:message styleClass="error errors"/>
|
| </div>
|
| </ui:composition>
|
Thanks in advance!
David
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4109114#4109114
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4109114
More information about the jboss-user
mailing list