在JSF中上载文件(需要正确的文件路径)
我试图让我的JSF站点上传一张图片到服务器上,但我有一段时间。我找到了4种方法,但我想使用h:InputFile,因为它似乎是最直接的 似乎我只需要提供正确的上传路径 添加@MultipartConfig后,我不再得到异常,但我无法验证文件是否已上载或看到任何错误在JSF中上载文件(需要正确的文件路径),jsf,file-upload,Jsf,File Upload,我试图让我的JSF站点上传一张图片到服务器上,但我有一段时间。我找到了4种方法,但我想使用h:InputFile,因为它似乎是最直接的 似乎我只需要提供正确的上传路径 添加@MultipartConfig后,我不再得到异常,但我无法验证文件是否已上载或看到任何错误 public void AddPicture() { ConnInfo HitIt = new ConnInfo(); try { HitIt.save(fileCelebrityToAdd)
public void AddPicture()
{
ConnInfo HitIt = new ConnInfo();
try
{
HitIt.save(fileCelebrityToAdd);
}
catch(Exception ex)
{
//?
}
}
@MultipartConfig(location="C:\\local\\pathway\\Netbeans\\project\\web\\Pictures\\items\\")
public class ConnInfo
{
private String uploadLocation;
public ConnInfo()
{
//uploadLocation = ".\\Pictures\\items\\";
uploadLocation = "C:\\local\\pathway\\Netbeans\\project\\web\\Pictures\\items\\";
}
public boolean TryOut(Part file) throws IOException
{
String monkey = uploadLocation+getFilename(file);
try
{
file.write(monkey);
}
catch(Exception ex)
{
return false;
}
return true;
}
}
希望我已经正确地复制了必要的信息。在回顾并重新阅读了所有我添加书签的文章之后,实际上是Tam建议我能够删除一些信息的那篇文章中的一篇 我不需要AJAX,也不需要@MultipartConfig,我之前的尝试也不正确,但下面的方法允许我成功地将图片上传到我想要的地方:
public boolean SaveHer(Part file)
{
String monkey = getFilename(file);
try (InputStream input = file.getInputStream())
{
Files.copy(input, new File(uploadLocation, monkey).toPath());
}
catch (IOException e)
{
// Show faces message?
return false;
}
return true;
}
请阅读这个主题:谢谢谭,这是我找到的众多文章之一。事实证明,我有一个嵌套表单问题影响了这一点,我将相应地更新该问题,但现在(看起来)这只是为文件提供正确路径的问题。不客气:)