Uploadify总是遇到错误'test.jpg(79.37KB) - HTTP错误'

时间:2013-01-21 15:33:46

标签: jquery file-upload struts2 uploadify

我正在使用Uploadify(并使用Struts2作为后端端)上传文件,每当我选择文件后,IO ErrorHTTP 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下的信息: enter image description here

我不知道是什么原因造成这个错误?任何人都可以给我帮助。非常感谢。

1 个答案:

答案 0 :(得分:0)

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

commons-fileupload.jar
commons-io.jar

谢谢!