自定义Alfresco Share时,扩展模块VS web扩展



好吧,几个月前我就在Alfresco 4.2b工作,主要是在Share。我正在准备一些定制作品,我的同事和我自己总是想知道这篇文章的主题。

我们知道,自Alfresco 4首次发布以来,扩展模块是一个相对较新的功能,但我们不知道在所使用的扩展机制方面,所进行的开发应该采取哪种方式。我们将所有的努力都放在使用扩展模块机制上,而不是使用web扩展目录。我们之所以这么做,是因为我们知道它可能更通用、更可维护、更可扩展,谁知道呢,在未来的版本中,可能会反对使用web扩展目录。我们也意识到,目前您不能对扩展模块做"所有事情"。

因此,根据其他开发人员的经验,我想了解这两种机制的优缺点,以及我们的扩展哲学是否做得正确。同时,我想为接下来的问题找到一个合理的答案:

  1. 在尝试使用扩展模块进行定制时,我们是否进行了正确的优先级排序并"牺牲"了时间?它值吗?

  2. 在进一步的发行版中,可能不赞成将web扩展目录作为自定义机制?

  3. 扩展模块的功能会得到改进吗?

  4. (大致)扩展模块的已知限制?主要的问题是,什么时候应该使用一种或另一种扩展机制?

我很想听听你的意见。基于您的真实经验并尽可能诚实地发表意见,我们将不胜感激。

事先非常感谢。

实际上两者都不是互斥的。

例如,我使用自己的扩展机制来定义新组件,这些组件的web脚本是在web扩展文件夹中定义的。

事实上,扩展模块本身可以位于alfresco/web extension/site data/extensions/下的web扩展文件夹中。。。

对我来说,使用扩展模块是一种逻辑打包(因为模块的部署过程)您的定制的方式。这是主要优势,因为如果您希望自定义仅在特定条件下可用,则可以通过评估器进行配置。

web-extension路由的两个主要问题是,您最终会在定制中复制核心代码,并且如果多个扩展试图扩展同一组件,那么其中一个必须获胜。

可扩展性模块可能需要做更多的工作,但您将大大减少维护负担,并在多个附加组件相互冲突时解决问题。

从4.2开始,您不需要覆盖web脚本组件-至少在Share中是这样。您应该始终使用可扩展性模块。

最新更新