Package javax. enterprise. event

Annotations and interfaces relating to events.

See: Description

Package javax.enterprise.event Description

Annotations and interfaces relating to events.

Beans may produce and consume events. Events allows beans to interact in a completely decoupled fashion, with no compile-time dependency between the interacting beans. Most importantly, it allows stateful beans in one architectural tier of the application to synchronize their internal state with state changes that occur in a different tier.

An event comprises:

  • A Java object, called the event object
  • A (possibly empty) set of instances of qualifier types, called the event qualifiers

The Event interface is used to fire events.

Event objects and event types

The event object acts as a payload, to propagate state from producer to consumer. An event object is an instance of a concrete Java class with no type variables.

The event types of the event include all superclasses and interfaces of the runtime class of the event object. An event type may not contain a type variable.

Event qualifiers

The event qualifiers act as topic selectors, allowing the consumer to narrow the set of events it observes. An event qualfier may be an instance of any qualifier type.

Observer methods

An observer method allows the application to receive and respond to event notifications. It acts as event consumer, observing events of a specific type, with a specific set of qualifiers. Any Java type may be observed by an observer method.

An observer method is a method of a bean class or extension with a parameter annotated @Observes.

An observer method will be notified of an event if:

  • the event object is assignable to the type observed by the observer method,
  • the observer method has all the event qualifiers of the event, and
  • either the event is not a container lifecycle event, or the observer method belongs to an extension.

If the observer method is a transactional observer method and there is a JTA transaction in progress when the event is fired, the observer method is notified during the appropriate transaction completion phase. Otherwise, the observer is notified when the event is fired.

The order in which observer methods are called is not defined, and so portable applications should not rely upon the order in which observers are called.

Observer methods may throw exceptions:

  • If the observer method is a transactional observer method, any exception is caught and logged by the container.
  • Otherwise, the exception aborts processing of the event. No other observer methods of that event will be called. The exception is rethrown. If the exception is a checked exception, it is wrapped and rethrown as an (unchecked) ObserverException.
See Also:
javax.enterprise.inject, Observes, Event, Qualifier

Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/enterprise/event/package-summary.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

References

  1. View the html document Language of the document:fr Manuel PHP : https://docs.oracle.com, javax.enterprise.event (Java(TM) EE 7 Specification APIs)

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.