Java Server 生命周期模块是用于侦听服务器生命周期事件的 Java 类,以便在发生服务器事件(如启动或停止)时执行特定任务。
服务器支持在 Web 服务器环境中运行短时间或长时间的基于 Java 的任务。这些任务在服务器启动时自动启动,并在服务器关闭时收到通知。因此,现在您可以立即得知诸如实例化 singleton 和 RMI 服务器等任务。
服务器生命周期的简短说明如下。
初始化-此阶段包括读取配置、初始化内置子系统;命名、安全性和日志记录服务;以及创建 Web 容器。
启动-此阶段包括加载和初始化部署的应用程序。
服务-服务器已就绪,可以处理请求。
关闭-此阶段将停止和销毁加载的应用程序。系统准备关闭。
终止-此阶段将终止内置子系统和服务器运行时环境。此阶段后将不会再有任何活动。
重新配置-服务器瞬态,服务器线程在此状态下进行动态重新配置(此时服务器处于服务状态)。此阶段在服务器生命周期中可出现多次。
选择配置。
从配置列表中选择相应的配置。要查看配置列表,请单击“配置”选项卡。
单击 "Java" >“生命周期模块”选项卡。
单击“新建”按钮。
提供以下参数的值:
名称-为新的生命周期模块提供一个有效的唯一名称。
已启用-如果要启用该生命周期模块,请使用此选项。
类名称-全限定 Java 类名称。该类应实现 com.sun.appserv.server.LifecycleListener 接口。有关使用此接口的更多信息,请参见开发者指南。
类路径-可选。您可以指定侦听器类的类路径。
加载顺序-大于 100。生命周期事件侦听器的加载顺序(以数字顺序表示)。建议选择一个大于或等于 100 的加载顺序,以避免与内部生命周期模块发生冲突。
装入失败时-如果启用该选项,服务器将不会把侦听器类抛出的异常视为致命错误,因此可继续执行正常启动。默认情况下,禁用该选项。
说明-提供有关生命周期模块的简短说明。
属性-属性可用于将参数传送给 Java 生命周期模块。要添加新属性,请单击“添加属性”按钮并在名称、值和说明字段中输入相应的文本。
服务器生命周期侦听器类是从主服务器线程同步调用的,因此必须采取额外的预防措施以避免这些侦听器类阻塞服务器。如果合适,这些侦听器类可创建线程,但是必须在关闭/终止阶段时停止这些线程。
选择配置。
从配置列表中选择相应的配置。要查看配置列表,请单击“配置”选项卡。
单击 "Java" >“生命周期模块”选项卡。
选择生命周期模块,然后单击“删除生命周期模块”按钮。
使用 CLI
以下示例说明了如何为由类 com.MyLifecycleModule 实现的配置 test 创建名为 myLifecycleModule 的 Java 生命周期模块。
wadm> create-lifecycle-module --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --class=com.sun.webserver.tests.LifecycleClass LifecycleTest |
请参见 CLI 参考 create-lifecycle-module(1)。
要列出 Java 生命周期模块,请执行以下命令:
wadm> list-lifecycle-modules --config=test |
请参见 CLI 参考 list-lifecycle-modules(1)。
要向 Java 生命周期模块中添加属性,请执行以下命令:
wadm> create-lifecycle-module-userprop --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --module=LifecycleTest info=Testing |
请参见 CLI 参考 create-lifecycle-module-userprop(1)。
要修改 Java 生命周期模块属性,请执行以下命令:
wadm> set-lifecycle-module-prop --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --module=LifecycleTest class-path=/space |
请参见 CLI 参考 set-lifecycle-module-prop(1)。