modalPanel - values of h:outputText don't display
molif Jun 13, 2008 11:29 AMHello, I hope that I don't repeat some other topic, but I didn't find a similar one.
So, my problem is that I have a modalPanel window, which has to display 3 outputText properties. Well, they are empty, although I don't have any error or exception.
The scenario is: I have a selectOneMenu, from which I select an item and then open the modalPanel to display its properies. The code is:
1. Code for the listbox:
<h:selectOneListbox id="templateControlMenu" value="#{templateManager.selectedTemplateFieldControl}" size="5"> <s:selectItems value="#{templateManager.listOfTemplateControls}" var="templateFieldControl" label="#{templateFieldControl.control.className}(#{templateFieldControl.parameter});"/> <s:convertEntity /> </h:selectOneListbox>
2. Code for the link that opens my modalPanel:
<a4j:commandLink value="#{messages['template.editControlOfField']}" action="#{templateManager.fillControlFields}" oncomplete="#{rich:component('controlsPanelEdit')}.show()"/>
3. Code of the modalPanel itself (which dispalys, except that controlForEdit.className, description and parameter stay empty):
<rich:modalPanel id="controlsPanelEdit" height="300" width="500" zindex="2000"> <f:facet name="header"> <h:outputText value="ADMIN - Edit Controls" /> </f:facet> <h:form id="editControlsInModalPanel"> <h:panelGrid id="tempFieldControlsEdit" columns="2" columnClasses="wfcol1,wfcol2" cellspacing="5" cellpadding="5" > <h:outputText value="Change parameter of this control:"/> <h:outputText value="#{templateManager.controlForEdit.className}"/> <h:outputText value="Description : "/> <h:outputText id="descriptionTextEdit" value="#{templateManager.controlForEdit.description}"/> <h:outputText value="Parameter"/> <h:inputText id="parameterTextEdit" value="#{templateManager.controlTempFieldForEdit.parameter}"/> <h:panelGrid id="modalPanelButtonsEdit" columns="2" columnClasses="wfcol1,wfcol2" cellspacing="3" cellpadding="10"> <a4j:commandButton id="submitPanelEdit" action="#{templateManager.addControlForField}" oncomplete="#{rich:component('controlsPanelEdit')}.hide()" reRender="templateControlMenu" value="#{messages['button.submit']}" styleClass="inputButton"/> <a4j:commandButton id="hidePanelEdit" oncomplete="#{rich:component('controlsPanelEdit')}.hide()" value="#{messages['button.cancel']}" styleClass="inputButton"/> </h:panelGrid> </h:panelGrid> </h:form> </rich:modalPanel>
4. Code of the filling method, in which I surely pass (verified in debug mode):
@SuppressWarnings("unchecked") public void fillControlFields(){ if (selectedTemplateFieldControl != null){ controlTempFieldForEdit = selectedTemplateFieldControl; controlForEdit = selectedTemplateFieldControl.getControl(); } }
I noticed that, in debug mode, after I click on the link that opens the modal panel, I don't pass through the getter methods of these 3 properites. I pass through them after I close the panel... Weird... Why don't they load on opening?
Any help is appreciated highly!
M.