我正在构建JSF2.2 Web应用程序,服务器是GlassFish V5。我希望直接配置可以存储网站用户上传文件的位置。
我正在使用以下代码将文件存储在服务器的(Mac)路径/var/gdf
(gdf
是Web应用的上下文名称)中。
失败的代码是part.write("/var/gdf/"+getFileName(part));
,其中part
是javax.servlet.http.Part;
的实例,而getFileName(part)
的代码如下:-
private static String getFileName(Part part){
String filename=null;
for (String cd : part.getHeader("content-disposition").split(";")) {
if (cd.trim().startsWith("filename")){
filename=cd.substring(cd.indexOf('=')+1).trim();
}
}
return filename;
}
但是,每次重新启动Glassfish服务器时,我都会在日志中看到以下错误:
严重:java.io.FileNotFoundException: /用户////glassfish5/glassfish/domains/domain1/generated/jsp/gdf/var/gdf/2O4A1012.JPG (没有这样的文件或目录)
任何建议将不胜感激。