Alfrescoのカスタマイズ方法について覚え書き
AlfrescoのWikiやForumをうろうろして徐々にカスタマイズについて分かってきたので、備忘録として書いていこうと思います。
カスタマイズ方法は大きく2つの方法に分かれます。
- 設定のみ
- 設定だけでもある程度はカスタマイズが可能です。
- 代表的なものは、コンテンツモデルの拡張です。例えば、属性を増やすとか。
- モジュールを作成
- 設定だけでは対応できない場合は、プログラミングが必要となります。ビューだけのカスタマイズであれば、テンプレートファイルやJavaScriptの作成のみでできます。サーバサイドで処理が必要な場合も、web-scriptというJavaScriptを使ってロジックを記述する仕組みあるので、JavaScriptオンリーで対応できるかも。Javaで開発することももちろんできる。
- Alfrescoではプラグインのような機構を用意してくれていますが、過去の経緯からか色々やり方があるっぽい。自分もまだ整理できていないですが、
- AMP(Alfresco Module Package)による拡張
- AMPファイルを作成し、専用のツールでWARに組み込む。
- Alfresco Share JAR Modules (カスタムダッシュレット、ページのみ。Alfresco 3.3から対応)
- Mavenプラグインを使ってalfresco.war/share.warを作成。
- Alfresco Repository Extensions (alfresco/extension Spring based WAR builds)
- Alfresco Share WAR Extensions (alfresco/web-extension Spring customization WAR builds)
- AMP(Alfresco Module Package)による拡張
一番シンプルなのは、Alfresco Share JAR Modulesですね。作成したJARを1個を配置するだけ。他はWARをマージするのでビルドに結構時間がかかります。