我正在尝试通过浏览功能将xls文件上传到我的服务器,但我得到的是异常。我可以看到它正在采用的路径为null,即使我没有明确设置任何路径。
java.io.FileNotFoundException: no such entry: "null\trQYXGpMctrhhDvnJ92wDYLJ0DZw1VFyjM2TnNQTQSj2nDPD104P!1525033770!1459920524559\IP1RateList.xls"
我的方法实施
FileEntry fileEntry;
fileEntry = (FileEntry) fe.getComponent();
FileEntryResults results = fileEntry.getResults();
for (FileEntryResults.FileInfo fileInfo : results.getFiles()) {
if (fileInfo.getFileName().endsWith(XLS)) {
setUploadFile(fileEntry.getResults().getFiles().get(0).getFile());
uploadDocument();
} else {
JavascriptContext.addJavascriptCall(
FacesContext.getCurrentInstance(), "importExcel.hide();");
getBaseBean().getErrorMessagesList().add(
messageFactory.getMessage(ERROR_INVALID_EXCEL_FILE));
}
}
我的xhtml文件
<ice:panelGrid>
<ace:fileEntry id="fileEntryComponent"
useOriginalFilename = "true"
fileEntryListener="#{ip1ListRatesBean.loadButton}"
maxFileCount="1"
maxFileCountMessage="Please upload one file at a time."
relativePath="/files/"
useSessionSubdir="true"
autoUpload="false">
</ace:fileEntry>
</ice:panelGrid>
在网站上阅读了一些评论之后,我还在web.xml中添加了context-param。
<context-param>
<param-name>org.icefaces.mandatoryResourceConfiguration</param-name>
<param-value>fileEntry</param-value>
</context-param>
如果需要进一步的信息,请告诉我。
由于
答案 0 :(得分:0)
由于xml类加载器问题,使用xlsx格式时出现了同样的错误 - XSSFWorkbook。我改为HSSFWorkbook使用旧的excel它解决了这个问题。 因此,请查看更改格式或查看xml-bean加载是否存在任何问题。