0
votes
            <p:dataTable  var = "lead" value="#{clientservice2.filteredLeads}"   editable="true" style="width: 90%">
            <p:ajax event="cellEdit" listener="#{clientservice2.onCellEdit}" update=":form:msgs" />

            <p:column style="width: 16px">
                <p:rowToggler/>
            </p:column>
            <!--<p:column  selectionMode="multiple" headerText="Действие"></p:column>-->
            <p:column headerText="Дата">
                <h:outputText value="#{clientservicehelper.formatDate(lead.creationDate)}" />

            </p:column>
            <p:column headerText="Tип">           
                <h:outputText  value="lead.type}"/>

            </p:column>
            <p:column headerText="Сумма">           
                <h:outputText value="#{clientservice2.getPropertyValueByName(lead, 'credit_amount').getValue()}"/>
            </p:column>
            <p:column headerText="Возраст">           
                <h:outputText  value="#{clientservicehelper.calculateAge(clientservice.getPropertyValueByName(lead, 'birth_date').getValue())}"/>
            </p:column>
            <p:column headerText="Канал">           
                <h:outputText  value=""/>
            </p:column>
            <p:column headerText="Менеджер">           
                <h:outputText  value=""/>
            </p:column>
            <p:column headerText="Статус">           
                <h:outputText  value="#{lead.status}"/>
                <p:cellEditor>
                    <f:facet name="output"><h:outputText value="#{lead.status}" /></f:facet>
                    <f:facet name="input">
                        <p:selectOneMenu value="#{lead.status}" style="width:100%">
                            <f:selectItem value="#{lead.status}"  itemLabel="#{status}" itemValue="#{status}" />
                        </p:selectOneMenu>
                    </f:facet>
                </p:cellEditor>
            </p:column>
            <p:rowExpansion>
                <p:panelGrid columns="3">
                    <p:column>
                        <h3>Контакты</h3>
                        <p:outputLabel title="фамилия:" value="#{lead.lastname}"/>

                    </p:column>
                    <p:column></p:column>
                    <p:column></p:column>
                </p:panelGrid>
            </p:rowExpansion>
        </p:dataTable>

My xhtml page and my datatable. So the question is how to make it editable and expandable,because when I add edit option expansion doesn't work. I am a litle bit new to primefaces so any help would be appreciated.

1
Make what editable? The content of the rowExpansion or the enclosing datatable? - kolossus

1 Answers

0
votes

Although you have your p:cellEditor elements in place, your p:dataTable is missing the editMode="cell" attribute. It should read:

<p:dataTable  var="lead" value="#{clientservice2.filteredLeads}" editMode="cell"    
   editable="true" style="width: 90%">
...
</p:dataTable>

Hth,

Thomas