1
即使如此我的問題是非常相似的另一個問題,它不完全相同。PrimeFaces DragDropEvent NullPointerException
我現在的XHTML看起來是這樣的:
<p:dataGrid id="availableAttachments" value="#{orgUnitCRBean.orgUnit.attachments}" var="attachment" varStatus="status">
<p:draggable revert="true" for="attachmentButton#{status.index}" disabled="false" readonly="false" rendered="true"/>
<p:panel toggleable="false" disabled="false" id="attachmentButton#{status.index}" readonly="false" rendered="true" title="#{attachment.fileName}" value="#{attachment.fileName}">
<p:commandButton ajax="false" disabled="false" readonly="false" rendered="true" value="#{attachment.fileName}">
<p:fileDownload value="#{orgUnitCRBean.handleFileDownload(attachment)}"/>
</p:commandButton>
</p:panel>
</p:dataGrid>
<p:droppable activeStyleClass="ui-state-highlight" dataSource="availableAttachments" tolerance="touch" for="attachmentPanel" disabled="false" readonly="false" rendered="true">
<p:ajax listener="#{orgUnitCRBean.handleFileDelete}" update="@form" disabled="false" readonly="false" rendered="true"/>
</p:droppable>
和bean是這樣的:
/*
* Delete an attachment.
*/
public void handleFileDelete(DragDropEvent ddEvent) {
Attachment attachment = ((Attachment) ddEvent.getData());
System.out.println("Attachment: " + attachment);
UUID id = attachment.getId();
String idToBeDeleted = attachment.getId().toString();
}
的DragDropEvent不包含任何數據,因此我在這裏得到一個NullPointerException。從我的角度來看,我非常接近PrimeFaces的展示。在網上發現了一些類似的問題,但沒有合適的答案。也許有人知道該怎麼做,在這裏?