JSF h:commandLink JavaScript错误

JSF h:commandLink JavaScript错误,jsf,jsf-2,Jsf,Jsf 2,我使用的是JSF2.0标签,我正试图打开一个窗口,其中目标为\u blank。在目标中,我试图填充从服务器获取的文档。但在执行此操作时,我在jsf.js(函数名为jsfcljs)的f.submit() 声明如下: <h:commandLink id="viewDocument" value="#{template.orderBean.documentBean.documentName}" action="#{template.viewCustomDocumen

我使用的是JSF2.0标签
,我正试图打开一个窗口,其中
目标为
\u blank
。在目标中,我试图填充从服务器获取的文档。但在执行此操作时,我在jsf.js(函数名为
jsfcljs
)的
f.submit()

声明如下:

<h:commandLink id="viewDocument" value="#{template.orderBean.documentBean.documentName}"
               action="#{template.viewCustomDocument}" target="_blank" styleClass="textbold">
    <f:param name="documentId" value="#{template.orderBean.documentBean.documentId}"/>
</h:commandLink>

我犯的错误是

对象不支持此属性

如果改用
,则可以调用服务器并获取文档


问题的原因是什么?

是否正在嵌套表单?请展示一个SSCCE以及正在使用的确切JSF和servletcontainer impl/版本,这样我们(和你自己!)就可以复制问题,只需将“粘贴”运行到一个完全空白的游乐场项目中,并将所有内容设置为默认值(除非另有明确说明)。@BalusC我没有嵌套表单。只有一种形式。我观察到的一件事是,如果我通过在表单上添加一些按钮提交表单而不执行任何操作,那么这个commandlink将被正确触发,没有任何错误,但是如果我单击链接,它总是会给出上述错误。我会尽量给你SSCCE,这样你会得到清晰的图片。谢谢你的评论:)@BalusC我真的很感谢你的回复。我已经找到了错误的原因。这不是因为commandLink,而是因为页面上有一个id为submit的组件,所以当从jsfcljs调用f.submit()时,它引用了该按钮,因此我得到了错误。抱歉给你添麻烦了。