My event source is trying to send an event, but the
emitter does not submit it to the event service and outputs message
CEIEM0015E to the log file ("The emitter does not support the specified
synchronization mode").
Cause
This problem indicates that the parameters
passed by the event source when sending the event specify a synchronization
mode that is not supported by the emitter. This can be caused be either
of the following conditions:
- The event source is specifying a synchronization mode that is
not valid. This is indicated by an IllegalArgumentException with the
message "Synchronization mode mode is not valid."
- The event source is specifying a synchronization mode that the
emitter is not configured to support. This is indicated by a SynchronizationModeNotSupportedException
with the message "The emitter does not support the specified synchronization
mode: mode."
Remedy
If the exception message indicates
that your event source is specifying a synchronization mode that is
not valid (IllegalArgumentException), check the method call that is
trying to send the event. Make sure the method parameters specify
one of the valid synchronization modes:
- SynchronizationMode.ASYNCHRONOUS
- SynchronizationMode.SYNCHRONOUS
- SynchronizationMode.DEFAULT
These constants are defined by the com.ibm.events.emitter.SynchronizationMode
interface.
If the exception message indicates that the specified
synchronization mode is not supported by the emitter (SynchronizationModeNotSupportedException),
check the emitter factory configuration:
- In the administrative console, click Service Integration > Common
Event Infrastructure > Event Emitter Factories > emitter_factory.
Make sure you are viewing the emitter factory used by the event source
application.
- Check the emitter factory settings to see which synchronization
modes are supported:
- If the Support Event Service transmission property is selected,
synchronous mode is supported.
- If the Support JMS transmission property is selected, asynchronous
mode is supported.
Querying transaction modes: An
event source can programmatically query the supported transaction
modes for a particular emitter by using the isSynchronizationModeSupported()
method. Refer to the Javadoc API documentation for more information.
- If the emitter does not support the synchronization mode you are
trying to use, you must either change the emitter factory configuration
or modify your event source to use a supported synchronization mode.