JSF 中有类似 ServletContextListener 的东西吗?

2024-01-06

我想听一下 JSF 应用程序是否启动或停止,就像使用ServletContextListener在普通 Servlet Web 应用程序中。我怎样才能实现这个目标?


您可以使用@ApplicationScoped http://docs.oracle.com/javaee/6/api/javax/faces/bean/ApplicationScoped.html @ManagedBean http://docs.oracle.com/javaee/6/api/javax/faces/bean/ManagedBean.html它被急切地初始化并注释所需的启动/关闭钩子方法@PostConstruct http://docs.oracle.com/javaee/6/api/javax/annotation/PostConstruct.html and @PreDestroy http://docs.oracle.com/javaee/6/api/javax/annotation/PreDestroy.html分别。

So:

@ManagedBean(eager=true)
@ApplicationScoped
public class App {

    @PostConstruct
    public void init() {
        // ...
    }

    @PreDestroy
    public void destroy() {
        // ...
    }

}

请注意,这确实not意味着你不能使用ServletContextListener在 JSF Web 应用程序中。 JSF 构建在 Servlet API 之上,这意味着您可以继续使用它。使用新的 Servlet 3.0@WebListener http://docs.oracle.com/javaee/6/api/javax/servlet/annotation/WebListener.html注解,也可以不需要配置web.xml:

@WebListener
public class Config implements ServletContextListener {

    @Override
    public void contextInitialized(ServletContextEvent event) {
        // ...
    }

    @Override
    public void contextDestroyed(ServletContextEvent event) {
        // ...
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSF 中有类似 ServletContextListener 的东西吗? 的相关文章

随机推荐

  • 使用数据框索引数据的 pandas 数据透视表

    我想从 pandas 数据框创建一个数据透视表 使用 dataframe pivot 并且不仅包括数据帧列 还包括数据帧索引中的数据 找不到任何说明如何执行此操作的文档 有小费吗 Use reset index使索引成为一列 In 45 d
  • 在 Android 中为图像视图添加缩放功能

    我想在我的 Android 应用程序中添加缩放功能 我已经尝试过这段代码 但它只是在图像中间放大和缩小 我想对整个图像应用缩放 在同一张图像中 我可以在图像的某些区域放置一个按钮吗 import android content Contex
  • 根据值类型过滤键子列表的接口键

    Problem 给定一个被视为映射的 TypeScript 接口 将唯一键类型与非唯一值类型相关 可以提取 映射到指定值类型的键类型 作为一个具体的例子 从WindowEventMap in lib dom d ts interface W
  • 如何设置 curve_fit 的初始值以找到最佳优化,而不仅仅是局部优化?

    我正在尝试拟合幂律函数 并找到最佳拟合参数 但是 我发现如果参数的初始猜测不同 最佳拟合 输出就会不同 除非我找到正确的初始猜测 否则我可以获得最佳优化 而不是局部优化 有没有办法找到 合适的初始猜测 下面列出了我的代码 请随意提出任何意见
  • Angular 8:对象不支持属性或方法“包含”

    我正在 Angular8 中构建一个应用程序 我在 angular5 6 7 上工作 对于这些应用程序 我取消了 polyfills ts 中存在的导入的注释 对于 Angular 8 它只有 3 个导入 即 classlist js we
  • 将网站表单转换为 PDF 并通过电子邮件发送给网站管理员

    我正在尝试为我的网站创建一个表单 一旦提交 该表单将转换为 PDF 并通过电子邮件发送给我自己 网站管理员 我知道我无法纯粹使用 JQuery Javascript 来完成该操作 我需要使用 PHP 来发送电子邮件 将 HTML 转换为 P
  • 如何在更改值后在运行时保存 ScriptableObject

    我在使用 ScriptableObjects 作为 Unity 应用程序中的保存对象时遇到问题 当我尝试向其中写入值时 一切都工作得很好 但如果我想关闭应用程序并加载 ScriptableObject 的值 这些值将重置为最后的值 这破坏了
  • AVFoundation 声音可以在 iOS 6 模拟器上工作,但不能在设备上工作?

    帮助 我可以在 iOS 模拟器上播放声音 但不能在我的设备上播放声音 这是我的代码 是的 音频文件位于指定位置 它绝对有效 SystemSoundID hashtag NSString path NSBundle mainBundle pa
  • 使用 Java 读取 .jar 清单文件

    所以我试图通过检查 mainfest 文件中的一些值来查看 jar 是否有效 使用java读取和解析文件的最佳方法是什么 我想到使用这个命令来提取文件 jar xvf anyjar jar META INF MANIFEST MF 但我可以
  • 无法通过 Google Apps 脚本打开 Slack 对话框

    我正在尝试使用 google apps 脚本和 Slack 来自动化我的工作 我希望使用 Slack 对话框输入一些文本 以使用 google apps 脚本修改我的 google 电子表格 但是 使用下面的代码 我无法通过以下方式打开对话
  • 如何在 C++ 中将使用 malloc 创建的数组声明为易失性

    我认为下面会给我 10 个易失性整数 volatile int foo 10 但是 我不认为以下内容会做同样的事情 volatile int foo foo malloc sizeof int 10 如果我对此以及如何使用 malloc 拥
  • 如何在 Spark 中通过组聚合滚动时间窗口

    我有一些数据想要按某个列进行分组 然后根据组中的滚动时间窗口聚合一系列字段 以下是一些示例数据 df spark createDataFrame Row date 2016 01 01 group by group1 get avg 5 g
  • HTML 格式的 jasper 报告

    我正在将 jasper 报告库与 GWT 应用程序一起使用 CSV 格式的报告可以很好地生成 但使用 HTML 格式时 它会生成带有缺少图片的图标的 HTML 页面 我知道 jasper 使用名为 PX 的透明图像 但找不到该图像 我怎么解
  • Android 中的 SSL 客户端身份验证

    我需要编写与 Net 服务通信的Android 应用程序 我必须进行服务器 客户端身份验证 我发现了一些有用的主题 这个博客 http blog antoine li index php 2010 10 android trusting s
  • GWT HashMap 与 JSON 之间的转换

    今晚我可能会有点累 但事情是这样的 我想要 GWT HashMap 与 JSON 之间的转换 我将如何实现这一目标 换句话说 我想采取HashMap 获取其 JSON 表示形式 将其存储在某处 然后将其返回到其本机 Java 表示形式 这是
  • 为什么这个 Windows 批处理文件只执行第一行,但所有三行都在命令 shell 中执行?

    我有一个批处理文件 它依次执行三个 Maven 命令 每个命令都可以在脚本中成功执行 本身 但是 当我将所有三个命令添加到同一个文件中时 只有第一个命令在脚本退出之前执行 知道为什么吗 mvn install install file Dg
  • 在asp.net中为Excel工作表提供背景颜色

    我正在 asp net 中执行导出到 Excel 的操作 而不使用任何第三方控件 如何为导出的 Excel 工作表指定背景颜色 根据某些单元格范围 背景颜色可能 不确定 有所不同 比如说单元格 0 5 Excel 中的单元格 A E 是红色
  • Camel Quartz 在路由启动时路由不需要的作业执行

    我有几条路线看起来像 from quartz getJobId cron cronExpression stateful true routeId getJobId autoStartup false to getRouteTo 这些路由可
  • Google Chrome 扩展 + 使用 Facebook 登录 + Parse

    我正在尝试构建一个 google chrome 扩展 一个用例要求用户可以使用 Facebook 登录并通过帖子分享到他们的 Facebook 墙上 正确的申请流程是这样的 用户点击 google chrome 扩展 召唤扩展页面 用户在扩
  • JSF 中有类似 ServletContextListener 的东西吗?

    我想听一下 JSF 应用程序是否启动或停止 就像使用ServletContextListener在普通 Servlet Web 应用程序中 我怎样才能实现这个目标 您可以使用 ApplicationScoped http docs orac