【问题标题】:How to execute a bean method before page is rendered?如何在页面呈现之前执行 bean 方法?
【发布时间】:2011-04-20 05:18:55
【问题描述】:

在呈现使用该 bean 的 JSF 页面之前,在 bean 中执行方法的最佳方法是什么?

更新:我正在尝试执行一个方法来填充 JSF 支持 bean 使用的一些数据。这个支持 bean 用于 JSP 页面上的表单中,我需要一些预先填充的数据。

【问题讨论】:

  • 你能详细说明一下吗?在当前状态下,这确实是开放式的。 “最佳方法”是为了什么?你想做什么?

标签: java jsf


【解决方案1】:

在 JSF2 中你也可以使用系统事件。

<f:event type="preRenderView" listener="#{customerBean.loadData}"/>

【讨论】:

    【解决方案2】:

    bean 的构造器/post 构造器@PostConstruct 方法会做到这一点。

    但是最好的方法很大程度上取决于你正在实现的功能,

    【讨论】:

    • 有一个 preRender 方法,我希望每次调用 bean 时都调用它,jsf 1.2 中是否有任何阶段侦听器可以用来调用此方法?
    • there is a preRender method that I wish to call everytime the bean is invoked,能不能扩展bean调用
    • 我已经用 @ConversationScoped 支持 bean 尝试过这个,我在 @Resource private SessionContext sessionContext 上遇到了符号未找到错误,我需要一些数据库访问。这只是仅供参考;)
    猜你喜欢
    • 2023-04-07
    • 2013-07-27
    • 2021-07-04
    • 2017-12-05
    • 1970-01-01
    • 2022-01-05
    • 2011-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多