2016-05-09 6 views
0

moquiフレームワークの起動時にapache igniteをmoquiフレームワークに追加したいと思います。 postFacadeInit()メソッドでignite instanceを起動しようとしましたが、うまくいきました。 しかし、これを解決するための侵入の少ない方法はありますか?コンポーネントを作成するなど、必要なときにコンポーネントをコンポーネントフォルダに入れることができます。moquiの起動時にサービスを追加するには?

答えて

0

Moqui Conf XMLファイルでは、webapp.after-startup要素とwebapp.before-shutdown要素を使用してアクションを指定できますXMLアクションの要素)を実行します。クラスローダーの後の実行は、コンポーネントlibディレクトリからクラスパスへのjarsを追加するので、オブジェクトをインスタンス化したり、init/destroyメソッドなどを呼び出すことができます。

次のバージョンのMoquiには、Apache Igniteと非常によく似た処理を行うHazelcastが含まれています。機能のいくつかはすでにmoqui/moqui-frameworkリポジトリにあり、さらに実装されてすぐにマージされます。

+0

ありがとう、私はこれを解決する方法は良い(Moqui Conf XMLで)と思う。 アフタースタートアップはwebappでバインドされているので、これは私のコンポーネントがwebapp情報を知っていることを意味するので、startup-後のaddのためのconfをオーバーライドすることができます。もしそうなら、私は、moquiフレームワークが** AfterMoquiStartup'、 'BeforeMoquiShutdown'、PreMoquiFacadeInit、PostMoquiFacadeInitのような**ライフサイクルコールバック**を提供することができると思います。そして、component.xmlでは、ライフサイクルコールバック、moquiが私のコンポーネントをロードするときに、ライフサイクルの実装を自動的に行うことができます。私の考えはどう思いますか? –

+0

あなたはもっと具体的になりますか?それは現在サポートされているものとどう違うのでしょうか? –

+0

これをもっと見ると、1つの違いがあります:Moquiがサーブレットコンテキスト(テストなどを含む)で初期化されていない場合、これらは実行されません。これについては、コンポーネントを初期化して破壊するためのより一般的なメカニズム(実装するインタフェースかもしれない)を追加することを考えていきます。この潜在的な機能を追跡したい場合は、moqui/moqui-frameworkで問題を作成してください。 –

関連する問題