我在 Linux 服务器上使用 Primefaces 5.2、jsf 2.2 和 Tomcat 8。这是我的 xhtml 中的行:
<p:fileUpload fileUploadListener="#{uploadController.complete}" multiple="true"/>
UploadController 类中的方法:
public void complete(FileUploadEvent fileUploadEvent) {
UploadedFile item = fileUploadEvent.getFile();
// ... etc. nothing special, all standard reading
}
如果我在码头启动我的页面,一切正常。
但是如果我用tomcat 8在linux服务器上启动它,我得到了
在类型上找不到 javax.el.ELException 属性“完整”
例外。我还尝试在我的 Windows 机器上的 tomcat 8 中运行我的代码(由 Maven 在货物容器中启动)。那里没问题。
更进一步的是为方法 UploadController.complete 放置一个参数:
<p:fileUpload fileUploadListener="#{uploadController.complete(fileUploadEvent)}" multiple="true"/>
...排除参数的唯一方法(不接受 f:param、f:attribute、... => 相同的 ELException)。但随后 UploadController 中的事件“fileUploadEvent”为 NULL。
如何解决问题?