0

有没有办法从 JSF 中的支持 bean 调用多个方法?

我有这样的事情:

                <h:outputLink value="#{bean.selectedEntry.link}">
                    <h:graphicImage
                        url="/CMS/button.png"
                        alt="button"></h:graphicImage>
            </h:outputLink>

当用户单击 outputLink 时,我想从 Bean 执行一些其他方法。有可能的?

PS我正在使用JSF 1.2

4

2 回答 2

1

将其替换为<h:commandLink>

例如

<h:form>
    <h:commandLink action="#{bean.openLink}">
        <h:graphicImage
            url="/CMS/button.png"
            alt="button"></h:graphicImage>
    </h:commandLink>
</h:form>

public void openLink() throws IOException {
    // You can just call any (multiple) Java methods here the usual way.
    // ...

    FacesContext.getCurrentInstance().getExternalContext().redirect(selectedEntry.getLink());
}
于 2012-04-05T17:19:52.640 回答
0

您为什么不想从您在 bean 中调用的方法中调用该方法?

如果您正在调用的方法在其他场景中使用,则重构您的代码以分离关注点并为每个不同的场景提供入口点。

于 2012-04-05T14:36:34.680 回答