自定义Alfresco Share时的扩展模块VS Web扩展

时间:2012-12-12 12:16:16

标签: customization share alfresco

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

我们知道扩展模块是一个相对较新的功能,自Alfresco 4首次发布以来可用,但我们不知道开发所采用的方式应该采用何种扩展机制。我们正在全力以赴地使用扩展模块机制而不是使用web扩展目录。我们这样做是因为我们理解它可能更通用,可维护和可扩展,并且谁知道,在更多版本中可能会弃用web扩展目录。我们也意识到目前你不能用扩展模块做“一切”。

因此,根据这一点,我想了解基于其他开发人员经验的两种机制的优缺点,以及我们是否正确地使用我们的扩展理念。与此同时,我想为下一个问题找到合理的答案:

  1. 我们是否正确优先排序并“牺牲”我们的时间尝试使用扩展模块进行自定义?值得吗?

  2. 可以在其他版本中将Web扩展目录弃用为自定义机制吗?

  3. 扩展模块功能是否会得到改善?

  4. (粗略地)扩展模块的已知限制?主要是问题可能是,何时应该使用一种扩展机制或另一种扩展机制?

  5. 我期待听到你的意见。根据您的实际经验和尽可能诚实的意见,我们将非常感激。

    非常感谢。

2 个答案:

答案 0 :(得分:1)

实际上两者都不是排他性的。

我正在使用自己作为扩展机制来定义新的组件,这些组件在web扩展文件夹中定义了。

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

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

答案 1 :(得分:0)

web-extension路由的两个主要问题是,您最终会在自定义中复制核心代码,如果多个扩展尝试扩展相同的组件,则必须获胜。

可扩展性模块可能需要更多工作,但是在减少维护负担方面,以及在多个附加组件相互冲突时解决问题时,您将获得更多优势。

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