s:link action方法中的Backingbean参数解析为null

时间:2014-10-13 09:56:19

标签: jsf richfaces seam

对不起,我是JSF的初学者

我有一个.xhtml页面,其中包含使用以下行的其他页面

<ui:include src="/anotherPage.xhtml">
   <ui:param name="home" value="#{someBackingBean}" />
</ui:include>

在这个页面中,我有s:link标签,用于下载通过“someBackingBean”引用方法的图片。我通过以下方式执行此操作:

<s:link action="#{home.retrieveLogo(null)}">
     <h:graphicImage id="image1" value="/img/icon.png" />
</s:link>

现在,当我点击此图标时,出现以下错误:

javax.el.PropertyNotFoundException: Target Unreachable, identifier 'home' resolved to null

知道为什么会这样吗?

修改

我设法通过使用h:commandLink而不是s:link来解决问题。但我不确切知道它为什么会起作用。我认为与表单提交有关。

1 个答案:

答案 0 :(得分:0)

您应该阅读文档here,该组件用于导航,当指定action属性时,该方法应返回一个字符串,用于确定重定向到的位置。

在你的情况下,如果你不想重定向用户,听起来像commandLink会更好