JSF更改自动生成的元素以允许使用ssl下载文件

时间:2011-11-21 11:20:44

标签: html internet-explorer jsf java-ee ssl

我有一个JSF 1.1 Web应用程序,我使用ssl来表示所有页面。因此,当我尝试使用Internet Explorer 8下载文件时,会引发经典的安全性异常,我无法下载该文件。

所以我在监听器的所有回复中添加了标题:IE cannot download foo.jsf. IE was not able to open this internet site. The requested site is either unavailable or cannot be found

但它没有解决问题。然后我意识到生成的html页面还包含元素:

meta content="no-cache" http-equiv="Pragma"
meta content="no-cache" http-equiv="Cache-Control"
meta content="no-store" http-equiv="Cache-Control"

所以这可能是问题所在?如何改变这些让我们说所有或选择页面?

(我在jsf中很新)

THX

1 个答案:

答案 0 :(得分:0)

这些标头需要在文件下载响应上设置,而不是在JSF响应上设置。 PhaseListener仅在JSF响应上运行(对于此目的而言,基本上是一种笨拙的方法,Filter会更好。)

设置标题的方式和位置取决于您如何为文件下载提供服务,这一问题并不明确。