Der p: commandLink oder p: commandButton im p: datagrids celleditor funktioniert nicht, wenn ich auf den BefehlLink klicke, leitet er mich zur selben Seite weiter. Im Celleditor findet der CommandLink seinen Zuhörer nicht, aber wenn ich ihn außerhalb des Celleditors nehme, funktioniert er perfekt.Der p: commandLink innerhalb des p: datagrids p: celleditor funktioniert nicht
<h:form id="form">
<p:growl id="msgs" showDetail="true"/>
<p:dataTable id="project" var="car" value="#{editdeleteview.proj_rec}" rowKey="#{car.id}" selection="#{editdeleteview.selected_rec}" selectionMode="single" editable="true" style="margin-bottom:20px">
<f:facet name="header">
All Projects
</f:facet>
<p:ajax event="rowEdit" listener="#{editdeleteview.onRowEdit}" update=":form:msgs"/>
<p:ajax event="rowEditCancel" listener="#{editdeleteview.onRowCancel}" update=":form:msgs"/>
<p:column headerText="ID">
<h:outputLabel value="#{car.id}" />
</p:column>
<p:column headerText="Title">
<p:commandLink ajax="false" action="#{editdeleteview.openObjects(car)}" ><h:outputText value="#{car.title}" /></p:commandLink>
<p:cellEditor>
<f:facet name="output"><p:commandLink ajax="false" action="#{editdeleteview.openObjects(car)}" ><h:outputText value="#{car.title}" /></p:commandLink></f:facet>
<f:facet name="input"><p:inputText value="#{car.title}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Description">
<p:cellEditor>
<f:facet name="output"><h:outputText value="#{car.description}" /></f:facet>
<f:facet name="input"><p:inputText value="#{car.description}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Insertion Time">
<p:cellEditor>
<f:facet name="output"><h:outputText value="#{car.insertionTimestamp}" /></f:facet>
<f:facet name="input"><p:inputText value="#{car.insertionTimestamp}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Close Time">
<p:cellEditor>
<f:facet name="output"><h:outputText value="#{car.closeTimestamp}" /></f:facet>
<f:facet name="input"><p:inputText value="#{car.closeTimestamp}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column headerText="Edit" style="width:50px">
<p:rowEditor />
</p:column>
<p:column headerText="Delete">
<p:commandButton id="downloadLink1" value="Delete" ajax="false" class="btn btn-danger" icon="ui-icon-trash" action="#{editdeleteview.delete(car)}">
</p:commandButton>
</p:column>
</p:dataTable>
</h:form>
Der p: command außerhalb des celleditor unter dem Spaltentitel funktioniert perfekt, aber innerhalb des celleditor der command funktioniert nicht, die Zuhörer in der Bohne ist
public String openObjects(Project p)
{
HttpSession session = SessionUtils.getSession();
session.setAttribute("project_id", p.getId());
session.setAttribute("project_title", p.getTitle());
//session.setAttribute("project_title", "Hamdan");
System.out.println("EditView: "+session.getAttribute("project_title").toString());
return "Objects.xhtml";
}
Ich habe auch diese commandLink in cellEditor doesn't trigger action/actionListener versucht aber das hat nicht für mich funktioniert. Jede Hilfe wird sehr geschätzt.
'nicht funktioniert' ist Art und Weise zu arbeiten. Eine Ihrer anderen Fragen ist als ein Duplikat von etwas markiert. Dieses Duplikat enthält Informationen zum weiteren Debuggen. Bitte. – Kukeltje
@Kukeltje Ich habe sie auch ausprobiert, ich habe das Problem erwähnt, dass der Befehlslink im cellEditor unter der Spalte "title" seinen Listener nicht aufruft und nur auf der gleichen Seite ohne Fehler weiterleitet. –
@Kukeltje der CommandLink außerhalb der CellEditor-Tag funktioniert einwandfrei, aber ich möchte, dass der CommandLink in CellEditor funktioniert. –