このチュートリアルで使われているプラグインのソースコードはAtlassian public source repositoryで利用可能である。
ソースコードは
ここでチェックすることができる。
Over View
このチュートリアルでは、「Comfluenceにカスタムアクションをどのように加えるか」を見る。カスタムアクションは、
Confluenceのページかブログ・ポストを見る場合'Tools'メニューによってアクセスすることができます。
あなたが"Add'draft'label"のカスタムアクションをToolsメニューから選択したとき、'draft'ラベルがページに追加されるだろう。
これをするために、次のコンポーネントで構成されているConfluenceプラグインを作成する。
- Confluence中のplugin moduleを可能にするPluginディスクリプタ。
- Confluence中のウェブ・アイテムを加えて、このアクションが何を行うか(confluence Web ItemおよびXWork-Webworkモジュールによって)定義するためのresource。
- plugin logic(それはConfluence PageAwareインターフェースを実装し、LabelManager依存性を注入する)をカプセルに入れるJavaクラス。
これらのコンポーネントはすべて単一のJAR file内に含まれる。
各コンポーネントに関しては下記参照のこと。
Step1.Create the Plugin Project
貴方のプラグインを作成するために適切なatlas-create-application-pluginを使うこと。
(applicationの部分がjiraだったりconfluenceだったりする。)
1.1あなたのplugin開発環境をセット・アップする、上記の
SDKドキュメント中の指示に従ってください。
2. atlas-create-confluence-pluginを実行する上記のSDKドキュメント中の指示に従ってください。これはあなたのskeleton pluginを作成するだろう。
- group-id:com.atlassian.plugins.tutorial
- artifact-id:AddDraftLabelAction
- varsion:1.0
- package:com.atlassian.plugins.tutorial
Step2.Add Plugin Metadara to the POM
あなたのプラグインや会社、組織についてのいくつかのメタデータを加えるために、POM(Project Object Model definition file)を編集する必要がある。
1.プラグインのrootフォルダ内にあるpom.xmlファイルを編集する。
2.<prganization>エレメントに、会社や組織の名前、ウェブサイトを加える。
(画像)
3.<name>エレメントをアップデートする。
(画像)
4.<description>エレメントをアップデートする。
(画像)
5.ファイルを保存する。
Step3.Resister the Plugin Modules in the Plugin Descriptor
次に、src/main/resources/atlassian-plugin.xmlのあなたのpluginディスクリプタに必要なpluginモジュールを加える必要がある。
pluginディスクリプタは、Confluenceへのpluginを識別し、pluginが要求する機能性を定義するXMLファイルです。
今、pluginディスクリプタ、atlassian-plugin.xmlの中でpluginモジュールを登録しなければなりません。
もしatlassian-plugin内のnameパラメータが${project.artifactID}ならば、前のステップであなたが<name>エレメントで使った${project.name}に変更する。
(画像)
Add the Web Item Module
まず、Confluenceインターフェイスないでのカスタムアクションの場所を定義するConfluence
Web Item moduleを加える必要がある。
この場合、私たちは、Confluenceページかブログ・ポストの'Tool'メニューの'primary'セクションにこのアクションを加えている。
(詳細な情報は
Web UI Moduleを参照せよ)
↑ここに、場所についての詳細情報が書かれている
Web Item Moduleは、さらにカスタム・アクションおよびそのシンタックスのためのリンクを定義する。
このリンク自体は、離れたXWork-Webwork moduleに定義されたアクションの引き金である。
Add the XWork-Webwork Module
最後に、XWork-Webwork moduleを定義する。
最終更新:2012年06月14日 17:44