在提示下使用Struts2下载文件

杰库马尔

我正在使用下载文件Struts2当我单击按钮下载文件时,文件将单独下载并在Excel中打开,而不是我要下载,当我右键单击该文件时,我应该可以打开或保存它。在中IEFirefox我看到一个打开或保存文件的窗口,但是在Chrome文件中,文件本身是在Excel中打开的。有什么办法可以ChromeFirefoxIE

行动

public String viewReport() throws Exception {
    boolean returnReport;
    inputStream = new FileInputStream(DOCUSIGN_REPORT_FILE);

    try {
        returnReport = validateRequest();
        if (returnReport) {

        intgList = this.generateViewIntegrationReportData(getESignUIConfig());
        this.createCSVFile(intgList, DOCUSIGN_REPORT_FILE);

        } else {
            failureResponse(msgs, 400);
            return null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        msgs.add(new Message(ESignatureIntegrationMessageTypeEnum.MESSAGE_TYPE_ERROR, 
                    UiIntegrationKeyConstants.UI_INTEGRATION_ERROR_CODE_500, UiIntegrationKeyConstants.UI_INTEGRATION_ERROR_TEXT_SERVICE_ERROR));
        failureResponse(msgs, 500);
        return null;
    }

    return UiIntegrationKeyConstants.REPORT_REPSONSE;
} 

Struts.xml

<action name="*Integration" method="{1}" class="foo.bar.ESignatureIntegrationAction">
    <result name="success" type="tiles">integrationView</result>  
    <result name="reportResponse" type="stream"> 
        <param name="contentType">application/text/csv</param>
        <param name="inputName">inputStream</param>  
        <param name="contentDisposition">
            attachment;filename="DocuSignEnvelopeReport.csv"
        </param> 
        <param name="bufferSize">4096</param>
    </result>  
</action>
安德里亚·利吉奥斯(Andrea Ligios)

询问是否使用桌面应用程序打开文件或保存文件的提示由contentDisposition设置为attachment(已设置)HTTP标头给出相反,inline本来可以尝试使用浏览器插件打开文件,而不问任何问题。

也就是说,问题背后的原因是您(或有权访问您计算机的人)先前已指示Chrome始终打开此类文件,这就是为什么它不再询问您如何做的原因:

在此处输入图片说明


解决方案是从设置中清除此选项


Customize and Control Google Chrome Settings + Show advanced settings Clear auto-opening settings


在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Struts2下载任何内容类型

来自分类Dev

如何使用Retrofit2下载文件?

来自分类Dev

使用struts2和Ajax下载文件时如何放置进度栏

来自分类Dev

从服务器Struts 2.0下载文件

来自分类Dev

Struts 2下载文件为0字节

来自分类Dev

如何使用Struts 2下载语言环境文件

来自分类Dev

Struts2下载期间自动插入空格

来自分类Dev

以非英语语言显示文件名,以供Struts2动态下载文件

来自分类Dev

带发布请求的angular2下载文件

来自分类Dev

Angular 2下载文件:结果损坏

来自分类Dev

带发布请求的angular2下载文件

来自分类Dev

使用Laravel从Amazon S3下载文件

来自分类Dev

如何使用urllib3下载文件?

来自分类Dev

使用Ext JS 6下载文件

来自分类Dev

使用异步Task <IHttpActionResult>的Web API 2下载文件

来自分类Dev

从Slim Framework 2.4下载文件

来自分类Dev

Cakephp 3.0下载文件

来自分类Dev

在Struts 2中下载文件

来自分类Dev

在Struts 2中下载文件

来自分类Dev

Struts2中的文件下载问题

来自分类Dev

使用XMLHttpRequest提示下载文件

来自分类Dev

使用XMLHttpRequest提示下载文件

来自分类Dev

如何在不使用html中的下载标签的情况下创建可下载文件?

来自分类Dev

通过其* .aria2文件恢复aria2下载文件

来自分类Dev

如何在不使用“文件下载”对话框的情况下使用WebBrowser控件下载文件?

来自分类Dev

通过Android Retrofit 2下载文件时是否可以显示进度栏

来自分类Dev

通过Https使用基本身份验证的骆驼http4下载文件

来自分类Dev

使用NSURLSessionDownloadTask一对一下载文件

来自分类Dev

如何使用AFNetworking 3.0下载文件并将其保存到本地?