我有很多outputLink菜单,我从数据库mysql生成它们 像:
<ui:repeat value="#{loginAction.subMenusBeans.subMenusBeansList}"
var="subMenusBeansList">
<ui:fragment rendered="#{menusBeansList.menuId == subMenusBeansList.menuId}" >
<h:commandLink id="circlLink" value="#{subMenusBeansList.subMenuName}"
action="{subMenusBeansList.subMenuLink}" />
</ui:fragment>
</ui:repeat>
我从数据库获取操作的价值并将其设置为'subMenusBeansList.subMenuLink'
输出:
head quarter
main offices
offices
and so on..
当我点击以上链接中的任何一个
异常:
找不到action="#{subMenusBeansList.subMenuLink}":
方法:
我想从数据库中设置操作方法名称,因为我有很多超链接,并且想要从数据库设置所有链接操作并使用ui:repeat生成它们到xhtml但是当我点击从{{1生成的任何超链接的操作时抛出异常
#{subMenusBeansList.subMenuLink}'
答案 0 :(得分:0)
你遇到的问题是<h:outputLink action="XXXX">
实际上需要一个MethodExpression,这就是为什么它没有尝试解析你的属性的吸气剂“subMenuLink。”
正如BalusC建议的那样,你可能想要的是使用`而不是。此属性需要ValueExpression,并且应该能够解析您的属性及其getter。