事件源以 Java 对象形式发送事件。
具体而言,每个事件都是实施 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 接口的类的实例,它是公共基本事件规范的 Java 表示。有关更多信息,请参阅公共基本事件模型。
要发送事件,使用发射器接口的 sendEvent() 方法。将事件提交至发射器时,将出现以下情况:
- 发射器调用事件的 complete() 方法,触发可选内容完成。请参阅自动完成事件内容 ,以获取更多信息。
- 发射器将序号和全局实例标识分配给还没有序号和标识的所有事件。
- 发射器对事件进行验证以确保它符合公共基本事件规范。
注: 当前公共基本事件规范在事件容器分层结构的每一层中只允许一个带有给定名称的扩展数据元素,但此限制未包括在该规范的未来版本中,并且未由
Common Event Infrastructure 强制实施。
- 如果过滤处于活动状态,发射器将对比当前的过滤条件检查事件,以确定应当发送还是废弃事件。
- 最后,如果事件有效并符合过滤条件,发射器会将该事件发送至事件服务器以实现持久性并分发至事件使用者。
如果事件无效或发射器尝试将事件发送至事件服务器时遇到问题,将抛出异常。
注: 如果启用了 WebSphere 安全性,则应用程序用户标识必须映射至 eventCreator 或
eventAdministrator 角色以使用同步 EJB 传输发送事件。