0

我正在使用 Uploadify(并使用 Struts2 作为后端)来上传文件,每当我选择一个文件后,a IO ErrororHTTP Error就会发生:

test.jpg (79.37KB) - HTTP Error

这是JavaScript代码:

$(select).uploadify({
            'uploader' : BASE_PATH + 'js/uploadify-v2.1.4/uploadify.swf',
            'script' : 'attachement/doUploadImage.action?jsessionid='+sessionId,
            'scriptData': {'folder': 'customer'},
            'auto' : true,
            'buttonText': 'Select a image',
            'displayData': 'percentage',
            'fileDesc': 'Support Formats:jpg/gif/jpeg/png/bmp.',
            'fileExt': '*.jpg;*.gif;*.jpeg;*.png;*.bmp',
            'multi': false,
            'cancelImg' : BASE_PATH + 'js/uploadify-v2.1.4/cancel.png',
            'fileDataName': 'uploadFile',
            'onComplete' : function(event, queueID, fileObj, response, data) {
               // Do something
            },
            'onError': function(error) {
            }
        });

以下是 struts.xml 配置:

<package name="attachement" namespace="/attachement" extends="test-default">
        <action name="do*" method="{1}" class="com.test.AttachmentAction">
        </action>
    </package>

以下是 AttachmentAction 中的代码:

private String folder;

private File uploadFile;

public void doUploadImage() {
    Upload result = new Upload();

    try {
        log.info("Begin uploading the file " + uploadFile);

        String filePath = IoUtil.saveAttachment(uploadFile, folder);

        result.setSuccess(true);
        result.setFilePath(filePath);
    } catch (Exception e) {
        e.printStackTrace();
        result.setSuccess(false);
        result.setMessage("Error: " + e.getMessage());
    }

    this.outJson(result);
}

以下是firebug下的信息: 在此处输入图像描述

我不知道是什么导致这个错误发生?任何人都可以给我帮助。非常感谢。

4

1 回答 1

0

几天后,这个问题就解决了。根本原因是我的项目没有包含 struts 2 上传功能所依赖的 Apache Jars。

commons-fileupload.jar
commons-io.jar

谢谢!

于 2013-01-28T07:32:28.237 回答