Enterprise Server のダイナミック デバッグを使用してサービスとアプリケーションをデバッグする方法

  1. Enterprise Server Administration に接続します。
  2. デバッグに使用するエンタープライズ サーバーのダイナミック デバッグを有効にします。
  3. サービスまたはアプリケーションをまだディプロイしていない場合は、サーバーにディプロイします。プログラムの .cbl および .cpy ソース ファイルと、デバッグに必要な .idy ファイルをディプロイしていることも確認します。
  4. プログラムがサービス (Web サービスまたは J2EE) の場合は、CICS や JCL アプリケーションの場合とは異なり、クライアント プログラムを作成して、そのサービスへの要求を送信する必要があります。
  5. UNIX シェル プロンプトで、cobesdebug ユーティリティを実行し、デバッグするサービスの詳細を (コマンド ラインで) 指定します。次の引数を使用します。
    引数 詳細 使用方法 適用先
    type デバッグするアプリケーションまたはサービスのタイプに応じて、JCL |WS | J2EE のいずれかを指定します。 必須 すべて
    jobname デバッグするジョブの名前を指定します。 省略可能 JCL のみ
    stepname デバッグする JCL ステップを指定します。 省略可能 JCL のみ
    jobnumber ヘルプ キュー内にある、デバッグするジョブの番号を指定します。 省略可能 JCL のみ
    プログラム デバッグする JCL プログラムの名前を指定します。 省略可能 JCL のみ
    ipaddress デバッグする Web サービスを要求するために使用するクライアントの IP アドレスを指定します。アドレスを xxx.xxx.xxx.xxx の形式で入力します。 省略可能 Web サービスのみ
    servicename サービスの完全修飾名を指定します。入力形式として、サービス名の後に、Web サービスの場合はシャープ (#) 記号、J2EE の場合はドット (.)を追加し、その後にデバッグするオペレーションの名前を続けます。例えば、ディプロイした Web サービスのサービス名が http://tempuri.org/wmapserv で、デバッグするオペレーションが Read の場合、サービスの正式名は http://tempuri.org/wmapserv#Read になります。 省略可能 Web サービスと J2EE
    server デバッグするサービスを実行するために使用するエンタープライズ サーバー リージョンを指定します。 必須 すべて

    例:cobesdebug type=WS server=ESDEMO servicename=http://tempuri.org/wmapserv#Read

    これで、cobesdebug は、サーバー パラメーターに指定されたエンタープライズ サーバー リージョンにサービスの詳細を渡し、Character Animator を開始します。Character Animator はサービスが開始されるまで待機します。

    サービスが起動するたびに、エンタープライズ サーバーは、ユーザーが入力した詳細とサービスが一致するかどうかを確認します。一致する場合、エンタープライズ サーバーは Character Animator をサービスにアタッチします。

    注:
    • デバッガーがアプリケーションのソースと .idy ファイルを見つけることができるようにする必要があります。このためには、.idy ファイルのパスを含めるように cobidy 環境変数を設定し、ソース ファイルのパスを含めるように cobcpy 環境変数を設定します。
    • エンタープライズ サーバーを開始するために使用したユーザー ID と同じユーザー ID の下で cobesdebug を実行する必要があります。
  6. クライアント プログラムを実行し、入力を行います。
  7. クライアントが要求を送信すると、エンタープライズ サーバーはデバッグ セッションをサービスにアタッチします。
  8. ディプロイされたサービスを通常の方法で 1 ステップずつ実行できます。
  9. 出口プログラム文に達すると、cobesdebug は、サービスの別のインスタンスが開始されるまで待機します。デバッグを終了したら、Ctrl+C を押して cobesdebug を閉じます。