首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

求解struts2上传时文件接不到有关问题

2013-04-02 
求解struts2上传时文件接不到问题。JSPform actionuploadMusicAction!upload.action enctypemultipar

求解struts2上传时文件接不到问题。
JSP<form action="uploadMusicAction!upload.action" enctype="multipart/form-data">
<div class="size">标题:<input type="text" name="title" class="uploadMusic"/></div>
<div>&emsp;</div>
<div class="size">文件:<s:file name="upload" cssClass="uploadMusic"/></div>
<div>&emsp;</div>
<div class="size2"><input type="submit" value="上传" class="uploadButton"></div>
</form>
struts.xml
[color=#00CCFF] <action name="uploadMusicAction" class="uploadMusicSpring">
           <interceptor-ref name="fileUpload"> 
 <param name="allowedTypes"> 
            image/bmp,image/png,image/gif,image/jpeg,image/jpg,image/x-png, image/pjpeg 
            </param> 
           <!--  配置允许上传的文件大小,单位字节  -->
            <param name="maximumSize">1024000</param>
            </interceptor-ref> 
            <interceptor-ref name="defaultStack"/>
   <result name="uploadSuccess">/music/uploadMusic.jsp</result>
</action>
Java类
public class UploadMusicAction {

private String message;
private IUploadMusicService uploadMusicService;
private File upload;
private String uploadFileName;
private String uploadContentType;
private String title;

public String upload() throws IOException {
System.out.println("upload======"+upload);
System.out.println("title======"+title);
        String path = ServletActionContext.getServletContext().getRealPath("/upload");
        
        System.out.println(path);
        if(upload != null){
        File savefile = new File(new File(path),uploadFileName);
        if(!savefile.getParentFile().exists())
               savefile.getParentFile().mkdirs();
        try {
               FileUtils.copyFile(upload , savefile);
        } catch (IOException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
        }
       
        String[] t = uploadContentType.split("/");
        for(String s : t)
               System.out.println(s);


        }

message = "uploadSuccess";
return "uploadSuccess";
}

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}

public void setUploadMusicService(IUploadMusicService uploadMusicService) {
this.uploadMusicService = uploadMusicService;
}

public File getUpload() {
return upload;
}

public void setUpload(File upload) {
System.out.println("执行?");
this.upload = upload;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

public String getUploadFileName() {
return uploadFileName;
}

public void setUploadFileName(String uploadFileName) {
this.uploadFileName = uploadFileName;
}

public String getUploadContentType() {
return uploadContentType;
}

public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}

}
一执行upload就是null的,帮忙看看原因,谢谢! struts upload
[解决办法]
在form里面写上 method="post"
[解决办法]
<form action="uploadMusicAction!upload.action" enctype="multipart/form-data">
你要把这个form表单设置为post提交的方式。
<form action="uploadMusicAction!upload.action" method="post" enctype="multipart/form-data">

热点排行