You're right! I was just debugging into it and way of confused, how the request parameters are populated back to the model, when this local value flag is never set... Now, I figured out, how this is done, cause since I provided the correct identifier for my form in the actionFor attribute of my command button, everything is working fine now!
Regards, CAK -- Carsten Kaiser Principal Consultant mailto:[EMAIL PROTECTED] Mobile: +49 (0)170 5270206 Valtech GmbH Werner-Heisenberg-Straße 2 63263 Neu-Isenburg Germany Phone: +49 (0)6102 88468-0 Fax: +49 (0)6102 88468-28 http://www.valtech.de Geschäftsführer: Ingo Kriescher Amtsgericht Düsseldorf HRB48672 -----Ursprüngliche Nachricht----- Von: Mike Kienenberger [mailto:[EMAIL PROTECTED] Gesendet: Mittwoch, 28. Februar 2007 21:14 An: MyFaces Discussion Betreff: Re: [Tomahawk] Urgent: DataTable Update model not working You'll be more likely to get help if you post what the particulars of your problem are rather than telling us how you think the JSF framework works or should work :-) On 2/28/07, Carsten Kaiser <[EMAIL PROTECTED]> wrote: > > > > > > Hello, > > > > I'm a newbie in JSF, therefore I need someone, who can explain to me, > how > model updates can be are performed at all > > when local value set remains false! > > > > As far as I understand when a new view is rendered, all values are > retrieved > from the managed bean and are written to > > the response. Afterwards the state of the component tree is serialized. > When > the next request comes in, the component > > tree gets restored and the changed values are supposed to be populated > into > the managed bean in the update model phase. > > > > Ok, that's theory. In practise I'm facing the following problem: In > processUpdate the UIInput component checks for the > > localValueSet variable. If it is not set, no model update is performed! > This > variable is serialized with the component tree > > and restored with the next request. So in the initial view rendering > phase, > it is never set to true, since the render > > (HtmlTextRenderer for example) does not call setValue on the component > at > all! Thus in the applyRequestValue phase when > > the state is restored, its value remain false. Only restoreState is > called > on the database table, but the request values are never > > populated into the data table! So the value remains false and ergo the > managed bean is never updated! > > > > So how can I enforce, that the request values are applied? > > > > Here are some code snippets from my jsp, managed bean and > faces-config.xml: > > > > JSP: > > <%@ taglib uri="http://java.sun.com/jsf/core" prefix="jsf-core" %> > > <%@ taglib uri="http://java.sun.com/jsf/html" prefix="jsf-html"%> > > <%@ taglib uri="http://myfaces.apache.org/tomahawk" > prefix="tomahawk"%> > > <%@ taglib uri="http://myfaces.apache.org/sandbox" > prefix="sandbox"%> > > <%@ taglib uri="http://sourceforge.net/projects/facestrace" > prefix="trace"%> > > > > <[EMAIL PROTECTED] file="../messages.jspf"%> > > > > <jsf-core:subview id="propertiesSubview"> > > <sandbox:subForm id="propertiesForm"> > > <tomahawk:dataTable bgcolor="#F5F5F5" > > var="property" > > value="#{componentBackup.properties}" > > border="1" > > cellspacing="0" > > footerClass="text12" > > headerClass="heading2grey" > > rules="groups" > > rows="14" > > forceId="true" > > forceIdIndex="true" > > forceIdIndexFormula="#{property.name}" > > width="580"> > > <jsf-core:facet name="header"> > > <tomahawk:panelGroup colspan="2"> > > <tomahawk:outputText > value="#{generation['klartextGenerator_tree_label']}" > rendered="#{componentBackup.identifier == 'klartextGenerator'}"/> > > <tomahawk:outputText > value="#{generation['contextProvider_tree_label']}" > rendered="#{componentBackup.identifier == 'contextProvider'}"/> > > </tomahawk:panelGroup> > > </jsf-core:facet> > > <jsf-html:column> > > <tomahawk:outputText styleClass="text12" > value="#{property.displayName} "/> > > </jsf-html:column> > > <jsf-html:column> > > <tomahawk:inputText rendered="#{property.name == > 'no'}" > > id="_no" > > title="#{property.description}" > > required="#{property.mandatory}" > > readonly="#{!property.modifiable}" > > forceId="true" > > forceIdIndex="true" > > > value="#{componentBackup.values['no']}" > > maxlength="5" > > size="5"/> > > <tomahawk:inputTextarea > rendered="#{property.name == > 'title'}" > > id="_title" > > title="#{property.description}" > > required="#{property.mandatory}" > > readonly="#{!property.modifiable}" > > forceId="true" > > forceIdIndex="true" > > > value="#{componentBackup.values['title']}" > > converter="CDATA" > > cols="40" > > rows="2" > > wrap="off"/> > > <tomahawk:inputTextarea > rendered="#{property.name == > 'greeting'}" > > id="_greeting" > > title="#{property.description}" > > required="#{property.mandatory}" > > readonly="#{!property.modifiable}" > > forceId="true" > > forceIdIndex="true" > > > value="#{componentBackup.values['greeting']}" > > converter="CDATA" > > cols="40" > > rows="4" > > wrap="off"/> > > <tomahawk:inputTextarea rendered="#{property.name == > 'text'}" > > id="_text" > > title="#{property.description}" > > required="#{property.mandatory}" > > readonly="#{!property.modifiable}" > > forceId="true" > > forceIdIndex="true" > > > value="#{componentBackup.values['text']}" > > converter="CDATA" > > cols="40" > > rows="2" > > wrap="off"/> > > <tomahawk:inputTextarea > rendered="#{property.name == > 'teaser'}" > > id="_teaser" > > title="#{property.description}" > > required="#{property.mandatory}" > > readonly="#{!property.modifiable}" > > forceId="true" > > forceIdIndex="true" > > > value="#{componentBackup.values['teaser']}" > > converter="CDATA" > > cols="40" > > rows="2" > > wrap="off"/> > > <tomahawk:inputTextarea > rendered="#{property.name == > 'securityResource'}" > > id="_securityResource" > > title="#{property.description}" > > ... > > [Message clipped]

