JSF panelGroup not getting rendered after ajax call

1k Views Asked by At

I'm using JSF and I have a form that contains a panelGroup and this panelGroup contains two commandLinks and a dataTable. The dataTable contains some commandLinks too. All commandLinks call a method of a JavaBean via AJAX.

And now the problem. If I click on the commandLinks link_edit or link_cancel the panelGroup is getting rerenderd. But if I click on a commadLink inside the dataTable like link_delete the panelGroup is not getting rerendered. Does anybody know what I'm doing wrong?

Here is the relevant section of the file:

    <h:panelGroup
        id="panel_destinations">
            <h:commandLink 
                id="link_edit"
                value="Edit" 
                styleClass="link"
                rendered="#{not editRoute.inEditDestinationMode}">
                 <f:ajax
                    listener="#{editRoute.editDestinations()}" 
                    render="panel_destinations"
                    immediate="true"/> 
            </h:commandLink>
            <h:commandLink 
                id="link_cancel"
                value="Abbrechen"
                styleClass="link"
                rendered="#{editRoute.inEditDestinationMode}">
                <f:ajax
                    listener="#{editRoute.cancelEditDestinations()}"                
                    immediate="true"
                    render="panel_destinations"/> 
            </h:commandLink>                    
        <h:dataTable 
            value="#{editRoute.route.destinations}" 
            var="destination"
            styleClass="dest_table"
            headerClass="route_table_header"
            rowClasses="route_table_row_odd,route_table_row_even"
            rendered="#{editRoute.hasDestinations()}"
            id="table_destinations">            

            <h:column>          
                <h:commandLink 
                    styleClass="route_table_link"
                    value="Delete"
                    id="link_delete"
                    rendered="#{editRoute.inEditDestinationMode}" >
                    <f:ajax
                        listener="#{editRoute.deleteDestination(destination)}"
                        render="panel_destinations"/>   
                </h:commandLink>                    
            </h:column>
        </h:dataTable>
    </h:panelGroup>
0

There are 0 best solutions below