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.