1
我在<p:dataTable>
中使用<p:fileUpload>
。上傳工作正常,但我想知道監聽器方法中當前迭代的行,以便我可以更新我的數據庫中的右側行。在p:fileUpload監聽器方法中獲取當前迭代的數據表的行
XHTML:
<p:fileUpload fileUploadListener="#{doorBean.handleFileUpload}"
mode="advanced" dragDropSupport="false" update="messages"
sizeLimit="3000000"
allowTypes="/(\.|\/)(gif|jpe?g|png)$/" />
豆:
public void handleFileUpload(FileUploadEvent event) {
this.file = event.getFile();
...
}
我怎樣才能做到這一點?我可以將其他參數傳遞給bean嗎?
這取決於您如何在視圖上表示數據庫行?例如,你是否使用了像
這樣的迭代器組件?如果是的話,你應該能夠傳遞一個完全獨立的行標識符/不管'
'。 – Tiny
'fileupload'是'datatable'的子節點 – mbauer
由於您使用的是PrimeFaces,本質上'datatable'應該更可能是''。 ''可以給你一個代表目標行(你想編輯/更新)的模型對象。因此,在執行更新操作時(在CRUD中),傳遞表示行標識符的獨立(標量)值沒有意義。您可以使用整個模型對象以及InputStream或byte []來更新該行(您應該可以在動作(偵聽器)方法中執行此操作)。你不是嗎?與'
'一起傳遞一個值有什麼意義? – Tiny