避免使用单独的函数来执行 commandLink 操作

发布于 2024-12-07 07:31:26 字数 520 浏览 0 评论 0原文

我想使用表单元素的属性,而不是使用附加函数来仅返回某个值。

当前情况

XHTML文件:

<h:commandLink action="#{menuBean.navigationAction(menuItem)}" ... >

背后的托管Bean:

public function navigationAction(MenuItem entry) {
    return entry.getForward();
}

期望情况

我想跳过方法调用,直接使用menuItem的属性来设置目的地。像这样:

<h:commandLink action="#{menuItem.forward}" />

不幸的是,这不起作用,因为找不到该方法。甚至可以这样做吗?

I would like to use a property of a form element instead of using an additional function to just return a certain value.

Current situation

XHTML file:

<h:commandLink action="#{menuBean.navigationAction(menuItem)}" ... >

Managed Bean behind it:

public function navigationAction(MenuItem entry) {
    return entry.getForward();
}

Desired situation

I would like to skip the method call and directly use the property of menuItem to set the destination. Like this:

<h:commandLink action="#{menuItem.forward}" />

This does unfortunately not work, as the method cannot be found. Is it even possible to do so?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

长亭外,古道边 2024-12-14 07:31:26

您可以尝试这样做:

<h:link outcome="#{menuItem.forward}" .../>

outcome 参数采用必须解析为字符串的值表达式。 h:commandLinkaction 属性需要一个方法表达式。

You could try this:

<h:link outcome="#{menuItem.forward}" .../>

The outcome parameter takes a value expression that must resolve to a string. The action attribute of h:commandLink needs a method expression.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文