Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Struts2从服务器接收到重复的标头_Java_Http_Struts2_Http Headers_Content Disposition - Fatal编程技术网

Java 使用Struts2从服务器接收到重复的标头

Java 使用Struts2从服务器接收到重复的标头,java,http,struts2,http-headers,content-disposition,Java,Http,Struts2,Http Headers,Content Disposition,我正在应用程序中使用Struts2。我需要下载excel文件(.xlsx和.xls格式)。这在IE中正常工作,但在Chrome中显示错误 “从服务器接收到重复的标头” 我在文件名之前使用引号(“您可以设置contentDisposition,就像您在struts配置中设置其他头一样 附件;filename=“Export.xlsx”; 应用程序/vnd.ms-excel 文件输入流 1024 您还可以使用${}符号将其参数化,并在操作中使用相应的getter: 附件;filename=“${

我正在应用程序中使用Struts2。我需要下载excel文件(.xlsx和.xls格式)。这在IE中正常工作,但在Chrome中显示错误

“从服务器接收到重复的标头”


我在文件名之前使用引号(“您可以设置
contentDisposition
,就像您在struts配置中设置其他头一样


附件;filename=“Export.xlsx”;
应用程序/vnd.ms-excel
文件输入流
1024
您还可以使用
${}
符号将其参数化,并在操作中使用相应的getter:

附件;filename=“${filename}”;
公共字符串getFilename(){…}

该错误意味着头字段被设置了两次;您应该能够在HTTP跟踪中看到这一点。因此,您需要找出设置两次的原因。

如果您使用的是
结果,那么也可以使用它来设置内容处置头。@AleksandrM我使用了通过操作类的内容处置。这就是您所拥有的吗请让我试试?我无法找到你。你能详细解释一下吗?
stream
result已经设置了此标题,你正在添加另一个标题,因此出现此错误。请阅读有关
stream
result的文档。我尝试了此操作。但我在Chrome中仍然遇到相同的错误。显然,你需要删除
response.setHeader(Content,“附件;filename='Export.xlsx';”;
操作的一部分确保您已正确重新部署,且未缓存任何内容谢谢Andrea。一旦我清除缓存,它将按预期工作。欢迎:)请记住接受答案