9.6.2 デバッグの実行
バッチアプリケーションのデバッグは,Eclipseで実行します。ここでは「9.6.1 デバッグ環境の設定」でバッチアプリケーションのManagement Serverリモート管理機能への接続を設定していることを前提としています。なお,バッチアプリケーションの実行については,「9.7.1 バッチアプリケーションの実行」を参照してください。
バッチアプリケーションをデバッグするには,次に示す方法があります。
-
ショートカットからデバッグする方法
-
[デバッグ構成]ダイアログを表示してデバッグする方法
それぞれの手順を示します。
(1) ショートカットからデバッグする方法
-
[プロジェクト・エクスプローラー]ビューでデバッグするプロジェクトのJavaソースファイルを開いて,ブレークポイントを設定します。
-
[プロジェクト・エクスプローラー]ビューで,デバッグするプロジェクトを選択するか,またはJavaファイルをエディタで開きます。
-
Eclipseのメニューから[実行]−[デバッグ]−[Cosminexus バッチ・アプリケーション]を選択します。
デバッグが開始されます。バッチサーバが起動されていない場合は,バッチサーバが起動します。
Management Serverの管理ユーザの設定で管理ユーザの認証を[認証あり]に設定している場合でManagement Serverリモート管理機能に未接続のときは,[ログイン - リモート管理]ダイアログが表示されるので,管理ユーザIDとパスワードを入力して,[OK]ボタンをクリックします。
ブレークポイントに達すると,処理が中断され,[デバッグ]パースペクティブを開くかどうかのメッセージが表示されます。[はい]ボタンをクリックすると,[デバッグ]パースペクティブが表示されます。
なお,ブレークポイントで中断された処理を再開したい場合は,Eclipseのメニューから[実行]−[再開]を選択してください。
(2) [デバッグ構成]ダイアログを表示してデバッグする方法
-
[プロジェクト・エクスプローラー]ビューでデバッグするプロジェクトのJavaソースファイルを開いて,ブレークポイントを設定します。
-
Eclipseのメニューから[実行]−[デバッグの構成]を選択します。
[デバッグ構成]ダイアログが表示されます。
-
作成した起動構成を選択して,[デバッグ]ボタンをクリックします。
デバッグが開始されます。バッチサーバが起動されていない場合は,バッチサーバが起動します。
Management Serverの管理ユーザの設定で管理ユーザの認証を[認証あり]に設定している場合でManagement Serverリモート管理機能に未接続のときは,[ログイン - リモート管理]ダイアログが表示されるので,管理ユーザIDとパスワードを入力して,[OK]ボタンをクリックします。
ブレークポイントに達すると,処理が中断され,[デバッグ]パースペクティブを開くかどうかのメッセージが表示されます。[はい]ボタンをクリックすると,[デバッグ]パースペクティブが表示されます。
なお,ブレークポイントで中断された処理を再開したい場合は,Eclipseのメニューから[実行]−[再開]を選択してください。
(3) デバッグ時の注意事項
-
バッチサーバが一つも構築されていない場合は,エラーになります。
-
デバッグ開始時に,デバッグの対象となるメインクラス,またはデバッグを実行するバッチサーバが複数ある場合は,[バッチ・アプリケーションの選択]ダイアログが表示されるので,デバッグの対象となるメインクラス,またはデバッグを実行するバッチサーバを指定してください。
-
デバッグ対象となる同一の起動構成が複数ある場合は,[バッチ・アプリケーションの選択]ダイアログが表示されるので,デバッグを実行する起動構成を選択してください。
-
起動済みのバッチサーバの設定を,運用管理ポータルやSmart Composer機能で変更した場合,バッチサーバを再起動してください。
-
バッチアプリケーションの初回デバッグ時には,バッチサーバを起動するため,バッチアプリケーションのデバッグまでに時間が掛かります。
-
Management Serverの設定で,バッチサーバの自動再起動が有効になっている場合,バッチアプリケーションの強制停止に失敗すると,バッチサーバが自動的に再起動されます。バッチサーバの再起動中は,バッチサーバを操作できません。また,デバッグモードで起動していたバッチサーバの再起動が完了すると,自動的にバッチサーバへデバッグ接続(再接続)されます。
-
バッチアプリケーションがブレークポイントで中断している状態で,バッチアプリケーションの強制停止,バッチサーバの停止,またはEclipseを終了した場合,バッチアプリケーションはブレークポイントの位置で停止されないで,ブレークポイント以降の数ステップの処理が実行されたあと,停止するときがあります。