Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 单击命令按钮操作后,无法渲染PanelGroup_Jsf 2 - Fatal编程技术网

Jsf 2 单击命令按钮操作后,无法渲染PanelGroup

Jsf 2 单击命令按钮操作后,无法渲染PanelGroup,jsf-2,Jsf 2,我有两组小组。一个面板组包含一个字段集,内部有两个单选按钮和一个命令按钮。根据单选按钮的选择,尊重的值将通过ajax调用显示在另一个面板组中。但问题是,在选择单选按钮之后,当单击命令按钮时,当第一次加载页面时,另一个面板组根本不呈现。当我刷新时,一切正常。我无法理解为什么renderedPanelGroup值没有设置为true,即使该值是在命令操作中设置的 test.xhtml 您不能更新未呈现的元素,rendered=false“是一种JSF方法”,用于从DOM树中删除元素 它不像css di

我有两组小组。一个面板组包含一个字段集,内部有两个单选按钮和一个命令按钮。根据单选按钮的选择,尊重的值将通过ajax调用显示在另一个面板组中。但问题是,在选择单选按钮之后,当单击命令按钮时,当第一次加载页面时,另一个面板组根本不呈现。当我刷新时,一切正常。我无法理解为什么renderedPanelGroup值没有设置为true,即使该值是在命令操作中设置的

test.xhtml
您不能更新未呈现的元素,rendered=false“是一种JSF方法”,用于从DOM树中删除元素


它不像css display:none或visibility:hidden您不能更新未呈现的元素,rendered=false“是一种JSF方法”从DOM树中删除元素


它不像css显示:无或可见性:隐藏欢迎您,在这种情况下,您应该接受答案。。。不客气,那样的话你应该接受答案。。。
    <h:form id="parentformid">
 <h:panelGroup id="demandDashBoardPanelGroupID">
    <fieldset> 
    <legend>Demand Dashboard</legend>

     <table>
        <tr>
        <td> 
            <h:selectOneRadio id="groupbyid" value="#{demandManagedBean.selectedRadioButton}" >  
                    <f:selectItem itemLabel="Group By Creation Date Time" itemValue="1" />  
                    <f:selectItem itemLabel="Group By Location" itemValue="2" />
            </h:selectOneRadio>
        </td>
        <td>
            <h:commandButton id="fetchbuttonID" value="Fetch" 
                     action="#{demandManagedBean.displayDemandRequestsTable}">
                          <f:ajax render=":parentformid:demandrequestpanelgrpid"execute="@form" /> 
            </h:commandButton>
        </td>
        </tr>
        </table>

     </fieldset>

     </h:panelGroup>
   //For checking demandManagedBean.renderedPanelGroup value. it is giving always false.Thats why panel group is not getting rendered.
   <h:outputText value="#{demandManagedBean.renderedPanelGroup}" />

    <h:panelGroup id="demandrequestpanelgrpid" rendered="#{demandManagedBean.renderedPanelGroup}"> 

     <fieldset id="demandrequestfieldsetid"> 

     <legend >Demand Requests</legend>

            <h:outputText rendered="#{demandManagedBean.renderFirstTable}" value="first table"/>

            <h:outputText rendered="#{demandManagedBean.renderSecondTable}" value="second table"/>

     </fieldset> 

   </h:panelGroup>
private String selectedRadioButton ="1";
private boolean renderFirstTable ;
private boolean renderSecondTable;
private boolean renderedPanelGroup ;

//getter and setter methods

public void displayDemandRequestsTable(){


        if(selectedRadioButton!= null && selectedRadioButton.endsWith("1")){

            renderFirstTable = true;
            renderSecondTable= false;

        }else if(selectedRadioButton!= null && selectedRadioButton.endsWith("2")){

            renderFirstTable = false;
            renderSecondTable= true;

        }
        renderedPanelGroup = true;
    }
<h:panelGroup id="demandrequestpanelgrpid">
    <h:panelGroup rendered="#{demandManagedBean.renderedPanelGroup}">