新建立的事件可以新增至事件型錄中。
執行這項作業的原因和時機
在您建立新的事件定義並且移入屬性說明和延伸資料元素後,便可以將它新增至事件型錄中。新增至事件型錄之後,就無法修改事件定義,但可以加以置換。
註: 如果已啟用 WebSphere 安全,應用程式使用者 ID 必須對映至 catalogAdministrator 角色,才能將事件定義新增至事件型錄中。
這項作業的步驟
如果要將事件定義新增至事件型錄中,請使用 addEventDefinition 方法。 boolean result = eventCatalog.addEventDefinition(definition, replace)
這個方法的參數如下:
- definition
- 您想要新增的事件定義。這必須是有效的 EventDefinition 實例。
- replace
- 這個 Boolean 值會指出指定的事件定義是否要取代同名的現有定義。
如果 replace 參數是 false,
指定事件定義的名稱就不能符合型錄中任何現有事件定義的名稱。如果存在,則會擲出 EventDefinitionExistsException 異常狀況。
如果 replace 參數為 true,則新的事件定義會取代在型錄中任何具有相同名稱的事件定義。不過,如果要保留繼承階層,新的事件定義必須與舊事件定義指名相同的母項;否則會擲出 ParentNotValidException 異常狀況。
結果
傳回的 Boolean 會指出是否已取代現有的事件定義。只有在 replace 等於 true,且新的定義已取代具有相同名稱的事件定義時,上述的 Boolean 才會等於 true。
將事件定義新增至事件型錄時,事件型錄會傳送一個事件到事件伺服器,
通知事件使用端發生這項變更。請參閱
變更通知。
註: 如果您試圖新增違反繼承規則的事件定義時,則會擲出 InheritanceNotValidException 異常狀況,而且也不會將事件定義新增至型錄中。如果新事件定義以無效的方式來置換繼承的內容或延伸資料元素說明,
或是取代現有的事件定義會導致後代會以無效的方式置換繼承的說明,就可能發生這個情況。如需詳細資訊,請參閱
事件型錄繼承關係。