新規投稿 記事一覧 ホーム
●ご利用方法,ご利用に際しての規約はこちらをお読みください。
こちらからの投稿は、先頭に表示されているコメントへの返信になります。
RE:Ajax AJX002にあるRPGSEND IKD さん [ 3月22日(土) 12時13分 ]

    iMagagine をご覧頂きましてありがとうございます。

    AJX002 は EnterpriseServer の RPGエンジン(RPGENGINE5) というサービス・プログラム(*SRVPGM) を
    バインドしているサンプルです。
    これは読者に実行原理をよりシンプルにわかりやすくするためです。
    一般に CGI をコンパイルするときは CRTBNDRPG ではなく
    CRTRPGMOD + CRTPGM でサービス・プログラム(*SRVPGM) をバインドします。
    RPGSEND は RPGエンジン内に定義されているプロシージャーです。
    また CRTPGM では ACTGRP(*NEW) でコンパイルしなければなりません。
    サービス・プログラムとは Windows の DLL に相当するもので
    RPGエンジンではなく System i のみで CGI を開発するのであれば
    QHTTPSVR/QTMHCGI という *SRVPGM をバインドする必要がありますが
    QTMHCGI では HTML からの変数を読み取るためのデコードやパースといった機能は
    ありませんので、独力で CGI を開発するとなると、特に漢字の入力等には
    莫大な労力を必要とします。
    このため IBM は (米国では) CGIDEV2 というフリーの *SRVPGM を公開しており
    多くのユーザーがこれを利用しています。
    原理を学習だけであれば QTMHCGI を利用して非常に簡単なサンプル CGI を開発することが
    できると思います。
    Ajax は CGI や Web開発のさらにその先にある技術です。
    簡単に言えば Ajax とは 対話式の HTMLインターフェースを実装する技術です。
    Ajax の登場によってC/S型の製品は不要となってしまうでしょう。
    Web開発の基礎はまだまだ System i のユーザーによって理解されていない部分が
    多いようですので機会があれば、ご紹介したいと思います。

    RE:Ajax AJX002にあるRPGSEND Okamo さん [ 3月25日(火) 19時33分 ]

      IKD様

      ご返事ありがとうございます。

      'RPGSEND'をprintf()に記述変更して、DFTACTGRP(*NO)でとりあえず、CRTBNDRPGしてコンパイルは
      通したのですが、これだけでは全然ダメなのですね。
      hhtp.confにcgiのディレクトリーをこのAJX002のPGMがある場所を指定したら、
      一応ブラウザからこのAJX002をAS400上で起動するとこまではできたのですが考慮すべき点がまだ全
      然足らないということですね。

      C/400がHTTPとRPGとのやりとりの部分をエンコードも含めて面倒見てくれるのではと思っていたの
      ですが、これは私の勘違いということでしょうか?

      > このため IBM は (米国では) CGIDEV2 というフリーの *SRVPGM を公開しており

      英語は苦手ですが、参考に勉強させていただきます。

      RE:Ajax AJX002にあるRPGSEND IKD さん [ 3月26日(水) 9時29分 ]

        C/400 は単なる開発言語ですので C/400 が HTMLとのインターフェースを
        とってくれるわけではありません。
        デコードやパースやユーザー自身の手で行うことが基本で
        OS400 提供の *SRVPGM として QHTTPSVR/QTMHCGI があります。
        下記は資料としては古いのですが CGI開発の基本がわかりやすくまとめられて
        いますのでご参考になさってください。

         [ AS/400 V3 TCP/IP機能とインターネット ]

        http://www-06.ibm.com/jp/servers/eserver/iseries/techinfo/cgiprog/doc.htm

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