0

我想将文件上传到我的网络项目,但我得到:

警告 oastruts2.dispatcher.Dispatcher -找不到创建多部分保存目录 '/temp'。警告 oasdmJakartaMultiPartRequest -无法解析请求 org.apache.commons.fileupload.FileUploadBase$IOFileUploadException:处理多部分/表单数据请求失败。 /temp/upload_1e39874d_effe_405b_9a92_3050ca60a661_00000000.tmp (没有这样的文件或目录)

所以我想更改上传目录

<struts>
    <constant name="struts.multipart.saveDir" value="/tmp"></constant>
    <package name="brand-struts" extends="abstract-struts">
<action name="saveBatchBrandGoodsInfo" class="brandgoodsAction" 
                                      method="saveBatchBrandGoodsInfo">
            <interceptor-ref name="fileUpload">             
                <param name="savePath">/upload</param>  
                <param name="maximumSize">1024000</param>  
            </interceptor-ref> 
            <result name="data" type="json">
                <param name="root">data</param>
            </result>
        </action>
    </package>

</struts>  

但它不起作用,我不断收到同样的错误

4

1 回答 1

0
  1. AFAIK,没有abstract-struts包裹这样的东西。只需扩展struts-default和删除savePath自定义。

  2. 您只包括fileUpload拦截器,而不是整个defaultStack。你需要做:

    <interceptor-ref name="defaultStack">
        <param name="fileUpload.maximumSize">1024000</param>  
    </interceptor-ref>
    

还要确保您的表单具有enctype="multipart/form-data".

于 2016-01-07T09:31:46.330 回答