在XWIki中安装扩展后初始化java库

在XWIki中安装扩展后初始化java库,java,initialization,listener,xwiki,Java,Initialization,Listener,Xwiki,我们已经用java为XWiki设计了一个监听器,并正在使用扩展管理器安装它。是否有在安装时运行的代码?我们希望立即注册侦听器,而不是等待组件的第一次实例化 XWiki版本是6.4.7 非常感谢您的帮助。您可以在另一个侦听器中侦听组件描述符注册事件。比如说 有关更多详细信息,请参见。如果您的侦听器是Java组件(如在实现org.xwiki.observation.EventListener的组件中),它将立即注册。不,它不是。我基于EventListener类创建了自己的listener类,因为我

我们已经用java为XWiki设计了一个监听器,并正在使用扩展管理器安装它。是否有在安装时运行的代码?我们希望立即注册侦听器,而不是等待组件的第一次实例化

XWiki版本是6.4.7


非常感谢您的帮助。

您可以在另一个侦听器中侦听组件描述符注册事件。比如说


有关更多详细信息,请参见。

如果您的侦听器是Java组件(如在实现org.xwiki.observation.EventListener的组件中),它将立即注册。

不,它不是。我基于EventListener类创建了自己的listener类,因为我需要对事件有更多的控制,并且需要确保它只侦听指定的Wiki(至少当事件是从任何其他Wiki(而不是他自己的Wiki)触发的时,他需要停止侦听。您可能在这里混合了一些东西。当接收ComponentDescriptorRadedEvent事件(安装组件时注册的事件)时,观察管理器会自动注册实现EventListener的组件)。如果您使侦听器实现org.xwiki.component.phase.Initializable,您将看到在安装过程中调用了initialize()。如果您希望事件侦听器被“调用”,而不仅仅是“注册”然后您可以收听例如ExtensionInstalledEvent或ExtensionUpgradeEvent事件。谢谢Thomas。这非常有帮助,我将定义并实施此建议。因此这意味着添加另一个侦听器。由于侦听器无法收听基于Wiki的事件,这意味着一(1)个正在触发我们设计的各种自定义侦听器的侦听器?听起来像一个计划:-)我将尽快研究它。