新規投稿 記事一覧 ホーム
●ご利用方法,ご利用に際しての規約はこちらをお読みください。
こちらからの投稿は、先頭に表示されているコメントへの返信になります。
ジョブの番号取得 ks さん [ 5月8日(木) 18時11分 ]

    RPG-CGIでweb化しているのですが、デバッグする際WRKACTJOBでみたとき
    下記のように表示されているものをオプション5でみて番号をみて

    APACHEDFT    QTMHHTTP    BCI      .0  PGM-QZSRCGI      TIMW 

    STRSRVJOB JOB(xxxxxx/QTMHHTTP/APACHEDFT)
    などとうってからSTRDBGしています。
    それが毎回面倒なのでCLを作成してコマンド化できればとおもってるのですが
    CLでRTVJOBAでとれそうなかんじはしたのですが、PGM-QZSRCGIの番号まで
    指定してとることはできるのでしょうか


    RE:ジョブの番号取得 IKD さん [ 5月10日(土) 12時55分 ]

      残念ながらできません。

      一般の HTTPサーバー(Apache も含めて) では、CGI がどのプロセスで
      起動されるかは、全く、不定です。
      従って動作させてみて初めて、起動プロセスのJOB番号を知ることができます。
      IBM 解説書では JOB番号を予め特定するためには
      子プロセスの数を 1個だけに限定して HTTPサーバーを起動するように
      解説されていますが、これは次の理由によって適切ではありません。

       ・本稼動の子プロセスを一個だけに絞ることは実用上できない。
       ・ブラウザは、必ずしも1対1 で子プロセスと会話するのではなく、
        フレームや画像ファイルが含まれている場合は、複数(2個) の
        Socket を使って、複数(2個) の子プロセスと通信する仕様となっている。

      上記のように、この解説者はブラウザや HTTPプロトコルの仕様を理解できて
      いません。

      しかしAlaska では、この問題は解決されています。
      開発者は、JOB番号を特定することなく、いつでも任意にソース・ディバッガーを
      使用することもできます。
      また仮想端末として起動しているJOB もディバッグすることができます。
      これは Alaska に、その機能を持たせているからです。
      ただし一般のHTTPサーバーのユーザーでも、この問題には非常に不便を
      感じているはずですので何らかの方法を現在、検討しているところです。
      とり急ぎの回避策としては CGI に DSPLY 命令を入れるのも,ひとつの手です。
      CGI はバッチとして動作していますので DSPLY 命令は QSYSOPR に表示されます。
      この方法もお試しください。


お名前
パスワード
e-mailアドレス
タイトル
ホームページ
アドレス