iDempiere(アイデンピエレ)のPlug-in(ラグイン)開発

 ここではiDempiere(アイデンピエレ)のプラグインの開発方法を調査及び研究し、その成果をまとめています。

Swing-UIのプラグイン管理 ※非公開コンテンツ

 Swing-UIのプラグインはWeb-UIとは別に管理されます。ここではSwing-UIのプラグイン管理について調査及び研究し、その成果をまとめています。

プラグイン開発の基礎知識 ※サポーターズコンテンツ

 プラグインを開発するためにはOSGiをはじめとして、事前に知っておくべき事がいくつかあります。ここでは、その前提知識を調査及び研究し、その成果をまとめています。

 プラグインを開発する前の環境構築に関する事項を調査及び研究し、その成果をとりまとめています。

プラグインプロジェクトのインポート ※サポーターズコンテンツ

プラグイン開発の基本的な流れ ※非公開コンテンツ

Swing-UI(Swing Client)

◆フィールド エディター(Field Editor)

◆検索ウィンドウ(Info Window)

Web-UI(ZK Client)

フォーム(Form) ※サポーターズコンテンツ

◆フィールド エディター(Field Editor)

◆検索ウィンドウ(Info Window)

Database interface

◆Database Configuration

◆Database Interface

Model

 モデルファクトリーのプラグインは、標準のモデルクラスの代わりに独自のモデルクラスを使用したり、アドオンテーブルのモデルクラスとして使用する事ができます。

モデルバリデーター(Model Validator)   ※サポーターズコンテンツ

 モデルバリデーターのプラグインを使用する事で、モデルクラスのbeforSave()メソッドや、aftesrSave()メソッドなどの後に独自の処理を既存のソースコードに変更無しに実装する事ができます。

タックスプロバイダー(Tax Provider)  ※サポーターズコンテンツ

 既存の税金処理のロジックをタックスプロバイダーのプラグインを使用する事により、プラグインに実装する処理ロジックに切り替える事ができます。

コールアウト(Callout) ※サポーターズコンテンツ

プロセス(Process) ※サポーターズコンテンツ

◆Accounting Document

◆Payment Processor

Server

◆Server Command Interface

◆Server Status Interface

◆Server Factory

Report

◆Report Viewer

◆Jasper Report Viewer

Export

◆Data grid Exporter

Resource

◆Resource Finder

2Pack

◆2Pack Element Handler

その他(Other)

◆ダッシュボードパネル(ガジェット)

◆ツールバーアイコン

プラグインのデバッグ ※サポーターズコンテンツ

 プラグインを開発する時に必ず必要となるデバッグの方法を調査及び研究し、その成果をまとめています。

プラグインのエクスポート ※サポーターズコンテンツ

 プラグインの開発後、配布するために必要となるプラグインのエクスポートについて調査及び研究し、その成果をまとめています。

拡張ポイントの定義 ※非公開コンテンツ

フラグメントの活用 ※サポーターズコンテンツ

 フラグメントを活用すると、ADempiereのCustomization.jarのように、既存のクラスを修正する事無く、フラグメントのクラスで置き換える事ができます。このコンテンツでは、このようにOSGiのフラグメントを活用する方法を調査及び研究し、その成果をまとめています。

フィーチャー ※非公開コンテンツ

更新サイト ※非公開コンテンツ

プラグイン開発Tips ※非公開コンテンツ

参考サイト

 Jan ThielemannさんがメンテナンスしているiDempiere(アイデンピエレ)のプラグイン開発ガイド。

 iDempiereのアーキテクト Heng Sinさんが公開している、Plug-inの拡張ポイントの資料。