【发布时间】:2011-06-29 22:53:17
【问题描述】:
我需要在新浏览器窗口中打开 pdf 文件的页面中呈现一个简单的链接。 我写了以下标签:
<h:commandLink target="_blank"
action="showPDF"
title="Show attached PDF"
actionListener="#{bean.doShowPDF}"
value="Show PDF">
<f:attribute name="path" value="#{bean.pdfPath}" />
</h:commandLink>
target 属性似乎被忽略了。目标页面出现在当前页面之上。
我尝试使用 h:outputLink:
<h:outputLink target="_blank"
title="Show attached PDF"
value="/visAttached.jspx">
<f:param name="path" value="#{bean.pdfPath}" />
Show PDF
</h:outputLink>
但结果相同。在这两种情况下,生成的 html 都没有 target 属性。
我的错在哪里? JSF 中有更好的策略来在新的浏览器窗口中显示文件吗?
【问题讨论】:
-
它应该可以工作。什么 JSF 实现/版本?我隐约记得古代 JSF 版本中的类似问题。
-
用最新的1.2_15试过了吗?
-
哎呀!.. 我使用的是 1.2_08。可能他们已经在以后的版本中修复了它。我会试试的。
-
刚刚尝试使用 1.2_15,行为相同。我将尝试使用更简单的页面(当我的孩子在床上时......),我的问题出在一个非常复杂的页面中。啊,我正在使用 facelets,这会是个问题吗?