type=page
status=published
title=Administering Life Cycle Modules
next=batch.html
prev=monitoring.html
~~~~~~

= Administering Life Cycle Modules

[[GSADG00013]][[giury]]


[[administering-life-cycle-modules]]
== 9 Administering Life Cycle Modules

This chapter provides procedures for administering life cycle modules in
the GlassFish Server Open Source Edition 7 environment.

The following topics are addressed here:

* link:#giuxo[About Life Cycle Modules]
* link:#giuue[Configuring Life Cycle Modules]

Instructions for accomplishing the tasks in this chapter by using the
Administration Console are contained in the Administration Console
online help.

[[giuxo]][[GSADG00566]][[about-life-cycle-modules]]

=== About Life Cycle Modules

Life cycle modules, also known as initialization services, provide a
means of running short or long duration Java-based tasks within the
GlassFish Server environment. These modules are automatically initiated
at server startup and are notified at various phases of the server life
cycle. Configured properties for a life cycle module are passed as
properties during server initialization.

All life cycle module classes and interfaces are in the
as-install`/modules/glassfish-api.jar` file.

A life cycle module listens for and performs its tasks in response to
the following GlassFish Server sequence of events:

1. Initialization. The server reads the configuration, initializes
built-in subsystems (such as security and logging services), and creates
the containers.
2. Startup. The server loads and initializes deployed applications.
3. Ready. The server begins servicing requests.
4. Shutdown. The server shuts down the applications and stops.
5. Termination. The server closes the containers, the built-in
subsystems, and the server runtime environment.

These events are defined in the `LifecycleEvent` class. For information
on creating life cycle modules, see "link:../application-development-guide/lifecycle-listeners.html#GSDVG00014[Developing
Lifecycle Listeners]" in GlassFish Server Open Source Edition
Application Development Guide.


[NOTE]
====
If the `is-failure-fatal` setting is set to true (the default is false),
life cycle module failure prevents server initialization or startup, but
not shutdown or termination.
====


[[giuue]][[GSADG00567]][[configuring-life-cycle-modules]]

=== Configuring Life Cycle Modules

The following topics are addressed here:

* link:#giuus[To Create a Life Cycle Module]
* link:#giuvh[To List Life Cycle Modules]
* link:#giuyh[To Update a Life Cycle Module]
* link:#giuux[To Delete a Life Cycle Module]

[[giuus]][[GSADG00399]][[to-create-a-life-cycle-module]]

==== To Create a Life Cycle Module

Use the `create-lifecycle-module` subcommand in remote mode to create a
life cycle module.

1. Ensure that the server is running. Remote subcommands require a running server.
2. Create a new life cycle modules by using the
link:../reference-manual/create-lifecycle-module.html#GSRFM00043[`create-lifecycle-module`] subcommand.
+
Information about options and properties for the subcommand are included
in this help page.
3. Restart the server for your changes to take effect.
+
See link:domains.html#ginqj[To Restart a Domain].

[[GSADG00206]][[giuyo]]
Example 9-1 Creating a Life Cycle Module

This example creates the `customSetup` life cycle module :

[source]
----
asadmin> create-lifecycle-module --classname "com.acme.CustomSetup"
--classpath "/export/customSetup" --loadorder 1 --failurefatal=true
--description "this is a sample customSetup"
--property rmi="Server\=acme1\:7070":timeout=30 customSetup
Command create-lifecycle-module executed successfully
----

[[GSADG927]]

See Also

You can also view the full syntax and options of the subcommand by
typing `asadmin help create-lifecycle-module` at the command line.

[[giuvh]][[GSADG00400]][[to-list-life-cycle-modules]]

==== To List Life Cycle Modules

Use the `list-lifecycle-modules` subcommand in remote mode to list the
existing life cycle modules.

1. Ensure that the server is running. Remote subcommands require a running server.
2. List life cycle modules by using the
link:../reference-manual/list-lifecycle-modules.html#GSRFM00181[`list-lifecycle-modules`] subcommand.

[[GSADG00207]][[giuyr]]
Example 9-2 Listing Life Cycle Modules

This example lists the existing life cycle modules.

[source]
----
asadmin> list-lifecycle-modules
WSTCPConnectorLCModule
Command list-lifecycle-modules executed successfully
----

[[GSADG928]]

See Also

You can also view the full syntax and options of the subcommand by
typing `asadmin help list-lifecycle-modules` at the command line.

[[giuyh]][[GSADG00401]][[to-update-a-life-cycle-module]]

==== To Update a Life Cycle Module

Use the `set` subcommand to update an existing life cycle module.

1. List the properties that can be updated for a life cycle module by
using the link:../reference-manual/get.html#GSRFM00139[`get`] subcommand.
+
For example (single mode):
+
[source]
----
asadmin get "*" | grep sampleLCM
applications.application.sampleLCMmodule.availability-enabled=false
applications.application.sampleLCMmodule.directory-deployed=false
applications.application.sampleLCMmodule.enabled=true
applications.application.sampleLCMmodule.name=sampleLCMmodule
applications.application.sampleLCMmodule.object-type=user
applications.application.sampleLCMmodule.property.class-name=example.lc.SampleModule
applications.application.sampleLCMmodule.property.classpath=/build/lcm.jar
applications.application.sampleLCMmodule.property.is-failure-fatal=false
applications.application.sampleLCMmodule.property.isLifecycle=true
----
2. Update a life cycle module by using the olink:GSRFM00226[`set`]
subcommand.
3. Restart the server for your changes to take effect.
+
See link:domains.html#ginqj[To Restart a Domain].

[[GSADG00208]][[giuyq]]
Example 9-3 Updating a Life Cycle Module

This example updates the `classpath` property.

[source]
----
sadmin> set applications.application.sampleLCMmodule.
property.classpath=/build/lcm_new.jarapplications.application.
sampleLCMmodule.property.classpath=/build/lcm_new.jar
Command set executed successfully.
----

[[GSADG929]]

See Also

You can also view the full syntax and options of the subcommand by
typing `asadmin help set` at the command line.

[[giuux]][[GSADG00402]][[to-delete-a-life-cycle-module]]

==== To Delete a Life Cycle Module

Use the `delete-lifecycle-module` subcommand in remote mode to delete a
life cycle module.

1. Ensure that the server is running. Remote subcommands require a running server.
2. List the current life cycle modules by using the
link:../reference-manual/list-lifecycle-modules.html#GSRFM00181[`list-lifecycle-modules`] subcommand.
3. Delete a life cycle module by using the
link:../reference-manual/delete-lifecycle-module.html#GSRFM00095[`delete-lifecycle-module`] subcommand.

[[GSADG00209]][[giuyi]]
Example 9-4 Deleting a Life Cycle Module

This example deletes the `customSetup` life cycle module.

[source]
----
asadmin> delete-lifecycle-module customSetup
Command delete-lifecycle-module executed successfully
----

[[GSADG930]]

See Also

You can also view the full syntax and options of the subcommand by
typing `asadmin help delete-lifecycle-module` at the command line.


