struts2上传问题

用的是struts2上传文件,现在上传有内容的文件是好使的,但是上传空文件就报错,就是txt里一个字也没写
报错java.io.FileNotFoundException:
D:\Tomcat 6.0\work\Catalina\localhost\ecdoms\upload__65a77bd1_12d96abb9bf__7fd5_00000661.tmp (系统找不到指定的文件。)

也就是new FileInputStream(uploads.get(i)));这句报错了
怎么写能避免这个错误

[color=red]action中代码[/color]DomsEnclosure el=new DomsEnclosure();
el.setFileContent(Hibernate.createBlob(new FileInputStream(uploads.get(i))));
el.setFileName(uploadsFileName.get(i));

el.setUploadTime(date);
el.setUploador(loginName);
el.setBelongModule(2L);
el.setFileType(uploadsContentType.get(i));
el.setFkId(exeJob.getId());
service.saveEnclosure(el);

[color=darkred]实体中代码[/color]public class DomsEnclosure implements java.io.Serializable {

// Fields    

 private String id;
 private String fkId;
 private String fileName;
 private String fileType;
 private String uploador;
 private Date uploadTime;
 private Long belongModule;
 private Blob fileContent;

3个回答

fileContent 这个是文件内容嘛。 如果它为空就不读取内容,但是创建该文件。

搞个判断。如果流是空。或者长度为0就不读取。

[code="java"]DomsEnclosure el=new DomsEnclosure();
try{
el.setFileContent(Hibernate.createBlob(new FileInputStream(uploads.get(i))));
el.setFileName(uploadsFileName.get(i));
el.setUploadTime(date);
el.setUploador(loginName);
el.setBelongModule(2L);
el.setFileType(uploadsContentType.get(i));
el.setFkId(exeJob.getId());
service.saveEnclosure(el);
}catch(FileNotFoundException e){
//其它操作
}[/code]

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐