2011-07-30 11 views
3

バッチ/シェルスクリプトを使用して実行可能なjarとしてデプロイされる1つのSpringバッチアプリケーションを開発しました。それはうまく動作します。SpringバッチアプリケーションとSpringバッチ管理

最近、私は春のバッチ管理アプリケーションのリリースについて読んでいます。彼らの文書によると、あなたはjob-context.xmlを指さなければならないと言います。これは、春のバッチアプリケーションを管理アプリケーションから起動、再起動、および停止することを許可します。今私の質問は、jarファイルの外にjob-context.xmlを保存しなければならないか、または正確な手順は何か、私はこの設定について混乱しています。 これに関する洞察は非常に便利で、春のバッチ2.1を使用しています。アプリケーションがカスタムクラスを持っているし、実行可能なjarファイルとして展開し、春のバッチ管理者の中に含まれていない場合

おかげ

答えて

1

は、あなたが仕事を開始することはできません。ジョブのステータスを表示したり、データベース内のステータスを「強制終了」することしかできません。

あなたが設定のアップロードセクションの終わりにhttp://static.springsource.org/spring-batch-admin/reference/reference.xhtmlを見れば、それは

を述べているあなたがいるために、プロセス 起動可能であるジョブレジストリ(「テスト・ジョブ」)に新しいエントリを見ることができますアプリケーションに ジョブへの参照があります。 (プロセスの外で実行された起動可能ではありませんジョブズが、 はそのJobRepositoryため、同じデータベースを使用するので、彼らはUIに 彼らの処刑で表示。

をあなたの仕事は厳密に設定可能ジョブがある場合XMLを使用してそれらを定義し、カスタマイズされたアイテムリーダー/プロセッサー/ライターや他のカスタムクラスを行う必要がない場合、ジョブXMLをアップロードすることができ、管理サイト内から実行可能になります。私の経験からカスタムクラスがある場合は、Webアプリケーション内にSpringバッチアプリケーションをデプロイしてから、別々に実行するジョブを含むXMLをアップロードする必要があります。

個人的には管理ツールを使用してジョブのステータスを表示し、いくつかのカスタムページを通じて統計情報を提供しました。私はジョブを実行するスケジューラを残し、管理サイトへのアクセス権を持つユーザーが何も知らなかったときにジョブを開始することを望んでいませんでした。基本的には、ユーザーに気分を与えることなく、ユーザーに暖かなファジーを与えるために使用しました。 (あなたには説明してくれなかった重要なケースを見つけるためにユーザーに任せてください)

2

Springバッチ管理アプリケーションは良いリファレンス実装であり、高度にカスタマイズ可能です。すべてのインタフェース実装は、独自のクラスを使用してSpring DIで置き換えることができます。 UIはテンプレート駆動型です(FreeMarkerと思います)ので、関連情報の表示、スキンの変更などのカスタマイズが可能です。

私はあなたのような必要性がありました。 .warファイルとして自分のジョブをパッケージ化しなければならないという事実はあまり好きではありませんでした。代わりに、私はSpring Batch Adminのソースから関連する設定を抽出し、ファイルシステムと組み込みのJettyサーバで動作するデプロイメントを作成しました。ここ

参照のスクリーンショット:https://github.com/regunathb/Trooper/wiki/Trooper-Batch-Web-Console

ソース、構成などはこちらをご利用いただけます:https://github.com/regunathb/Trooper/tree/master/batch-core。このプロジェクトは実際に.warではなく.jarを作成します

関連する問題