我的 struts2 表单中有一个文件上传字段,例如:
<s:file label="Upload" name="file" id="file" size="40" cssClass="width284" value="%{file}"/>
这非常适合上传文件,现在当我open this form again in edit mode
编辑信息时,i got this file field empty
即在文件浏览器文本框中找不到文件名(带路径)。我有文件对象的 getter/setter 方法,并且我在 pojo 对象中设置了文件,我得到了结果。
我还在文件标签中设置了值,但仍然没有在文件标签的文本框中获取文件名。
我不知道这是怎么发生的,任何人都知道。
先谢谢了。
编辑了
我的 JSP 文件:-
<form name="library" id="library" method="post" action="addlibrary" enctype="multipart/form-data" >
<div><s:textfield name="title" value="%{title}" id="title" label="Title" cssClass="width284"/><span class="red">*</span><div>
<div><s:file label="Upload" name="file" id="file" size="40" cssClass="width284" value="%{file}" /></div>
<div><span class="submit" ><s:submit name="submit" value="Add to Library" cssStyle="width:130px;"></s:submit></span> </div>
打开编辑时我的动作类代码:-
private File file;
private String fileContentType;
private String fileFileName;
public String edit() {
if (this.object.getId() == 0) {
this.object = null;
return SUCCESS;
} else {
this.object = this.objectDAO.getobjectContent(this.object.getId());
String filePath = "d:\\myProject\\Documents\\"+ this.object.getFileName();
this.file = new File(filePath);
return INPUT;
}
}