事件來源會以 Java 物件的形式來傳送事件。
明確地說,每個事件都是實作 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 介面之類別的一個實例,
它是 Common Base Event 規格的 Java 表示法。如需詳細資訊,請參閱 Common Base Event 模型。
如果要傳送事件,請使用 Emitter 介面的 sendEvent() 方法。
當您送出事件給發射器時,會發生下列動作:
- 發射器會呼叫事件的 complete() 方法,觸發選用的完成內容動作。請參閱自動完成事件內容 以取得詳細資訊。
- 發射器會指派序號和廣域實例 ID 給還沒有這些項目的任何事件。
- 發射器驗證事件以確定它符合 Common Base Event 規格。
註: 現行 Common Base Event 規格只接受一個在事件包含階層的各層次上具有給定名稱的延伸資料元素,
但該規格的未來版本不會納入這項限制,「共用事件基礎架構」也不會實施這項限制。
- 如果過濾在作用中,發射器會針對現行過濾準則來檢查事件,以判斷應該傳送或捨棄事件。
- 最後,如果事件有效並通過過濾準則,發射器會將事件傳送給事件伺服器,
以便持續保存並分送給事件使用端。
如果事件無效,或在嘗試將事件傳送給事件伺服器時,發射器發生問題,則會擲出異常狀況。
註: 如果已啟用 WebSphere 安全,應用程式使用者 ID 必須對映至 eventCreator 或 eventAdministrator 角色,才能使用同步 EJB 傳輸來傳送事件。