本章では、いろいろな Web サーバー・インターフェースを使用した、 Net.Data の起動方法について説明しています。 起動メソッドのいずれかを使用する前に、 Net.Data は、指定されたインターフェースに対して、 最初に構成されていなければなりません。 Net.Data を構成することで、以下の Web サーバー・インターフェースが使用できます。
これらのインターフェースに対する Net.Data の構成については、 Net.Data の構成を参照してください。 デフォルトでは、Web サーバーは Net.Data を CGI プログラムとして起動し、 個々の Net.Data 要求を別々の新規プロセスで実行します。 Web サーバーの構成時に Net.Data を起動する方法は、 ユーザーが決定します。
以下の各セクションでは、Net.Data が受け入れる要求の種類、 およびいろいろな API およびサーブレットを使用して、 Net.Data を起動するために使用できるメソッドを説明しています。
Net.Data を起動するときに使用するメソッドとは関係なく、 指定可能な要求は 2 種類あります。これは、マクロを実行するかどうか、 または単一の SQL ステートメント、ストアード・プロシージャー、 または関数を実行するかどうかに依存します。
単一の SQL 照会を作成したり、または DB2 ストアード・プロシージャー、 REXX プログラム、または Perl 関数などの単一の関数の呼び出しをする Web 開発者は、 データベースに直接要求を発行することができます。 直接要求は、Net.Data マクロを必要とする、 複雑な Net.Data アプリケーション・ロジックではありません。 したがって、Net.Data マクロ処理プログラムをバイパスします。直接要求パラメーターは、 パフォーマンス改善の処理を行うのに適した言語環境に渡されます。
図 18 は、マクロ要求と直接要求の違いを示しています。 マクロ要求は通常、その要求の URL 内のマクロを指定します。 フォーム・データを使用することもできます。 直接要求では URL 内のマクロは指定されませんが、 フォーム・データを引き続き使用できます。
Net.Data を起動する構文は、Net.Data の構成と、 作成する要求のタイプによって異なります。 マクロおよび直接要求では、 どちらの場合も、Net.Data は URL を使用して起動されます。 この URL は、ユーザーが直接入力できます。 また、HTML リンクまたは HTML 形式として、HTML ページにコーディング可能です。 Web サーバーが Net.Data を起動する際には、 CGI、FastCGI、または Web サーバー API のいずれか 1 つを使用します。 また、Net.Data サーブレットを使用して、Net.Data を起動することもできます。
マクロ要求の場合は、Net.Data マクロの名前、 および Net.Data マクロ内で実行される HTML ブロックの名前を、URL 内で指定します。 直接要求の場合は、Net.Data 言語環境の名前、SQL ステートメントまたは関数の名前、 および追加の必須パラメーター値を、URL 内で指定します。 これらの値は、Net.Data によって定義された構文を使用して、指定します。
以下のセクションでは、これらの起動要求を詳細に説明しています。
この例では、CGI を使用して、 Net.Data を起動するときに使用する構文を指定していますが、 この概念は、Net.Data の起動に使用されるすべてのインターフェースに適用されます。 インターフェースのそれぞれのタイプに必要とされる的確な構文については、 それぞれのタイプに特定のセクションを参照してください。
このセクションでは、マクロを指定した Net.Data の起動の方法を示します。
以下の構文ステートメントに Net.Data の起動方法を示します。
http://server/Net.Data_invocation_path/filename/block[?name=val&...]
パラメーター:
その上でブラウザーで URL を直接指定する、 または以下のように HTML リンクまたはフォームで URL を使用することができます。
パラメーター:
例
以下の例は、 Net.Data のさまざまな呼び出し方法を示しています。
例 1: HTML リンクを使用して Net.Data を呼び出す
<A HREF="http://server/cgi-bin/db2www/myMacro.d2w/report"> . . . </A>
例 2: フォームを使用して Net.Data を呼び出す
<FORM METHOD=POST ACTION="http://server/cgi-bin/db2www/myMacro.d2w/report"> . . . </FORM>
以下の節では、HTML リンクおよびフォームと、 これらを使用した Net.Data の呼び出し方法の詳細について説明します。
Web ページを作成する場合、HTML リンクを作成し、 HTML ブロックの実行することができます。ブラウザーでユーザーが HTML リンクに定義されたテキストやイメージをクリックすると、Net.Data はそのマクロ内の HTML ブロックを実行します。
HTML リンクを作成するには、HTML <a> タグを使用します。 Net.Data マクロへのハイパーリンクに使用するテキストまたはグラフィックを決定して、 これを <a> および </a> タグで囲みます。<a> タグの HREF 属性にマクロおよび HTML ブロックを指定します。
次の例は、ユーザーが Web ページ上でテキスト「List all monitors (モニターをすべてリストする)」を選択したときに実行される SQL 照会とのリンクを示しています。
<a href="http://server/cgi-bin/db2www/listA.d2w/report"> List all monitors</a>
リンクをクリックすると、listA.d2w 名のマクロが呼び出されます。 これには以下の例のように "report" という HTML ブロックがあります。
%DEFINE DATABASE="MNS97" %FUNCTION(DTW_SQL) myQuery() { SELECT MODNO, COST, DESCRIP FROM EQPTABLE WHERE TYPE='MONITOR' %} %HTML(report){ @myQuery() %}
この照会は、EQPTABLE 表の中に記述された各モニターに関する型式番号、コスト、および記述情報を持つ表を戻します。 この例は、照会の結果をデフォルトのレポートで表示します。 REPORT ブロックを使用してレポートをカスタマイズする方法に関しては、 レポート・ブロックを参照してください。
HTML フォームを使用して、Net.Data マクロの実行を動的にカスタマイズすることができます。 フォームによって値を入力することが可能になり、 マクロの実行と Net.Data が生成する Web ページの内容を変更することができます。
以下の例は、HTML リンク でのモニター・リストの例に基づいていますが、 ユーザーはブラウザーで、簡単な HTML 形式を使用して製品型を選択し、 その情報を表示することができます。
<H1>Hardware Query Form</H1> <HR> <FORM METHOD=POST ACTION="/cgi-bin/db2www/equiplst.d2w/report"> <P>What type of hardware do you want to see? <MENU> <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="MON" checked> Monitors <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="PNT"> Pointing devices <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="PRT"> Printers <LI><INPUT TYPE="RADIO" NAME="hdware" VALUE="SCN"> Scanners </MENU> <INPUT TYPE="SUBMIT" VALUE="Submit"> </FORM>
ブラウザーで選択し、「Submit (実行)」ボタンをクリックすると、 Web ブラウザーは FORM タグの ACTION パラメーターを処理し、Net.Data が起動します。 次に Net.Data は、equiplst.d2w マクロの中の HTML レポート・ブロックを実行します。
%DEFINE DATABASE="MNS97" %FUNCTION(DTW_SQL) myQuery(){ SELECT MODNO, COST, DESCRIP FROM EQPTABLE WHERE TYPE='$(hdware)' %REPORT{ <H3>Here is the list you requested</H3> %ROW{ <HR> $(N1): $(V1), $(N2): $(V2) <P>$(N3): $(V3) %} %} %} %HTML(report){ @myQuery() %}
上記の例では、SQL ステートメント内の TYPE=$(hdware) の値は、 HTML 形式入力データから利用することができます。
ROW ブロックで使用される変数の詳細な記述に関しては、 『Net.Data 解説書 』を参照してください。
このセクションでは、直接要求 を使用して、 Net.Data を起動する方法を示します。 直接要求を使用するときには、URL にマクロの名前を指定しないでください。 その代わりに、Net.Data によって定義された構文を使用して、Net.Data 言語環境、 SQL ステートメントまたは実行するプログラム、および追加の必須パラメーター値を、 URL で指定します。直接要求を使用可能または使用不可にする方法については、 DTW_DIRECT_REQUEST: 直接要求変数を使用可能にするを参照してください。
SQL ステートメントまたはプログラム、およびその他の指定されたパラメーターは、 指定された言語環境に直接渡され、処理されます。 直接要求によって、Net.Data がマクロを読み込んで処理する必要がなくなるため、 パフォーマンスが向上します。SQL、ODBC、Oracle、Sybase、Java、System、Perl、および REXX Net.Data によって提供される言語環境は、 直接要求をサポートしています。 ユーザーは URL、HRML フォーム、またはリンクを使用して、 Net.Data を呼び出すことができます。
直接要求は、URL またはフォーム・データの照会ストリングで、 パラメーターを渡すことによって、Net.Data を起動します。 次の例は、ユーザーが直接要求を指定するコンテキストを図示しています。
<A HREF="http://server/cgi-bin/db2www/?direct_request">any text</A>
ここで direct_request は、直接要求の構文を表しています。 たとえば、以下の HTML リンクには、直接要求が含まれています。
<A HREF="http://server/cgi-bin/db2www/?LANGENV=DTW_PERL&FUNC=my_perl(hi)"> any text</A>
直接要求で Net.Data を起動する構文には、 データベースや非データベース言語環境への呼び出しが含まれています。
構文
>>-?--+-| データベース言語環境呼び出し |---+------------------->< '-| 非データベース言語環境呼び出し |-' データベース言語環境呼び出し .------------------------------------. V | |------+------------------------------+--+--LANGENV =-----------> '-| フォーム・データ入力 |--&--' >-------dblangenv----&------------------------------------------> .------------------------------------. V | >--------+------------------------------+--+--------------------> '-| フォーム・データ入力 |--&--' >-----+-SQL=--sql_stmt-------------------------------------------+> '-FUNC=--stored_proc_name--(--| パラメーター・リスト |--)--' .------------------------------------. V | >--------+------------------------------+--+--------------------| '-&--| フォーム・データ入力 |--' フォーム・データ入力 |---DATABASE----+-----------------------+--=---VALUE------------| +-DB_CASE---------------+ +-DTW_HTML_TABLE--------+ +-LOGIN-----------------+ +-PASSWORD--------------+ +-RPT_MAX_ROWS----------+ +-SHOWSQL---------------+ '-user_defined_variable-' パラメーター・リスト .-,-------------------------------------------------------------. V | |-----+-IN--parm_type--+-parm_value--------+---------------------+--+-> | '-"--parm_value--"--' | +-OUT--parm_type--+-parm_name--+---------------------------+ | '-parm_name--' | '-INOUT--parm_type--+-parm_name--+---+-parm_value--------+-' '-parm_name--' '-"--parm_value--"--' >---------------------------------------------------------------| 非データベース言語環境呼び出し |---LANGENV=------lang_env----&---FUNC--=--program_name---------> .-,-----------------------. V | >----(-----+-------------------+--+---)-------------------------| '-"--parm_value--"--'
パラメーター
次の例は、直接要求メソッドを使用する場合に、 Net.Data を起動するいろいろな方法を示しています。
以下の例では、リンクによって Net.Data を起動するために、直接要求を使用しています。
例 1: Perl 言語環境を起動して、 Net.Data 初期設定ファイルの EXEC パス・ステートメントの Perl スクリプトを呼び出すリンク
<A HREF="http://server/cgi-bin/db2www/?LANGENV=DTW_PERL&FUNC=my_perl(hi)"> any text</A>
例 2: 直前の例のように Perl 言語環境を起動するが、 二重引用符およびスペース文字に対して、 URL 形式で符号化された値でストリングを渡すリンク
<A HREF="http://server/cgi-bin/db2www/?LANGENV=DTW_PERL&FUNC=my_perl (%22Hello+World%22)">any text</A>
ヒント: | URL では、 スペースや二重引用符などの特定の文字は符号化しなければなりません。 この例では、パラメーター値の中の二重引用符とスペースは、 それぞれ %22 および + 文字に符号化されています。 ユーザーは、組み込み関数 DTW_URLESCSEQ を使用して、 URL で符号化の必要があるテキストをすべて符号化することができます。 DTW_URLESCSEQ 関数についての詳細は、 Net.Data 解説書 の説明を参照してください。 |
以下の例では、フォームによって Net.Data を起動するために、 直接要求が使用されています。
例 1: SQL 言語環境を使用して SQL 照会の実行、 CELDIAL データベースへの接続、テーブルの照会を行う HTML フォーム
<FORM METHOD="POST" ACTION="http://server/cgi-bin/db2www/"> <INPUT TYPE=hidden NAME="LANGENV" VALUE="DTW_SQL"> <INPUT TYPE=hidden NAME="DATABASE" VALUE="CELDIAL" <INPUT TYPE=hidden NAME="SQL" VALUE="select * from Table1 where col1=$(InputName)"> Enter Customer name: <INPUT TYPE=text NAME="InputName" VALUE="John"> <INPUT TYPE=SUBMIT> </FORM>
これは、SQL ステートメント内の変数置換の例で、WHERE 文節は動的になります。
以下の例では、URL によって Net.Data を起動するために、 直接要求が使用されています。
例 1: SQL 言語環境を使用する SQL 照会を実行する URL
http://server/cgi-bin/db2www/?LANGENV=DTW_SQL&DATABASE=CELDIAL &SQL=select+*+from+customer
例 2: Perl 言語環境を起動して、 Net.Data 初期設定ファイルの EXEC パス・ステートメントにない、 実行可能ファイルを呼び出す URL
http://server/cgi-bin/db2www/?LANGENV=DTW_PERL&FUNC=/u/MYDIR/macros/myexec.pl
例 3: システム言語環境を起動し、 外部 Perl スクリプトを呼び出す URL
http://server/cgi-bin/db2www/?LANGENV=DTW_SYSTEM&FUNC=perl+/u/MYDIR/macros/myexec.pl
例 4: REXX 言語環境を起動し、 プログラムにパラメーターを渡す URL
http://server/cgi-bin/db2www/?LANGENV=DTW_REXX&FUNC=myexec.cmd(parm1,parm2)
例 5: ストアード・プロシージャーを呼び出し、 SQL 言語環境にパラメーターを渡す URL
http://server/cgi-bin/db2www/?LANGENV=DTW_SQL&FUNC=MY_STORED_PROC (IN+CHAR(30)+Salaries)&DATABASE=CELDIAL
Net.Data は、ご使用のオペレーティング・システムによって、 以下のリストの Web API をサポートします。
ご使用のオペレーティング・システムのためにサポートされる Web サーバー API を決定するには、 Net.Data 解説書 のオペレーティング・システムの参照付録を参照してください。 API を使用するための Net.Data と Web サーバーの構成方法を理解するには、 Web サーバー API と一緒に使用するための Net.Data の構成を参照してください。
要件 :
Web サーバー API を起動するには、 以下のようにします。
構文 :
http://server_name/CGI-BIN/db2www/macro_name/html_block
パラメーター :
例 :
http://myserver/CGI-BIN/db2www/mymacro.d2w/report
構文 :
http://server_name/server_HTML_root_directory/dll_name/ macro_name/ html_block
パラメーター :
例 :
http://myserver/scripts/dtwisapi.dll/mymacro.d2w/report
構文 :
http://server_name/macro_name/html_block
パラメーター :
例 :
http://myserver/mymacro.d2w/report
サーブレットは、 CGI プログラムまたは Web サーバーの API プラグインに似た役割を果たす、 Java クラスです。 Web サーバーは、サーブレットを使用して、HTML ページを動的に作成します。 サーブレットは独自のグラフィカル・ユーザー・インターフェースを持っていませんが、 サーブレットのクラスは、ローカルで、またはネットワークを通じて、 動的にロードされます。 また、URL アドレスを使用して (リモート)、 またはクラス名によって (ローカル)、呼び出すことができます。
Net.Data は、Net.Data がサポートする Java 使用可能オペレーティング・システムの中で、 Net.Data マクロの起動、Net.Data 関数の実行、 または Net.Data による SQL ステートメントの実行のために、 使用可能なサーブレットを提供します。
本章では、次の概念と操作を説明しています。
Net.Data は、サーブレットおよび NetObjects Fusion プラグインを、 Java 環境で使用できる Net.Data とともに提供します。 サーブレットとプラグインを使用して、次のことが行えます。
このセクションでは、次のサーブレットのトピックを説明しています。
Net.Data にはサーブレットがあり、 Java 環境を利用したマクロの開発および管理に役立ちます。 サーブレットは、 CGI プログラムまたは Web サーバーの API プラグインに似た役割を果たす、 Java クラスです。 Java サーブレットが使用可能な Web サーバーがサーブレットを使用し、 HTML ページを作成します。 サーブレットは独自のグラフィカル・ユーザー・インターフェースを持っていません。 ただしサーブレットのクラスは、ローカルで、またはネットワークを通じて、 動的にロードされ、URL アドレスを使用して (リモート)、 またはクラス名によって (ローカル)、呼び出されます。 サーブレットは、Windows NT および AIX オペレーティング・システムで使用可能です。
Net.Data サーブレットは Java ベースのラッパーで、ネイティブ DLL ファイルを使用して、 Net.Data バージョン 2 のマクロまたは直接要求を実行します。 これらのサーブレットによって、 既存のマクロ (MacroServlet) または単一の関数 (FunctionServlet) を実行できます。 Net.Data バージョン 2 は、これらのサーブレットを使用するために必要です。 Net.Data サーブレットはデータベースまたは非データベースの言語環境プログラムを実行できるほか、 Live Connection と一緒に実行することもできます。
サーブレットには、アプリケーションとともに使用する API が付いています。 サーブレット API は Net.Data で文書化されます。 API ドキュメンテーションについては、 <inst_dir>/servlets/NetDataServlets.jar ファイルを参照してください。
Net.Data には次の 2 つのサーブレットがあります。
マクロ・サーブレットを使用することは、 Java サーブレットを通じてマクロを実行する場合を除いて、 CGI-BIN インターフェースを通じて Net.Data マクロを実行することに似ています。 マクロ・サーブレットには、Net.Data バージョン 2、 またはそれ以降のバージョンがインストールされている必要があります。
マクロ・サーブレットを使用すると、以下のような利点があります。
さらに マクロ・サーブレットによって、Perl、REXX、Java のような種々の言語環境プログラムに加えて、 DB2、Oracle、および Sybase のような異機種のデータベースに、 ネイティブ・アクセスできるようになります。
関数サーブレットには、Net.Data バージョン 2 がインストールされている必要があります。
Net.Data サーブレットは、URL から、または HTML ファイルの SSI として、実行可能です。 NetObjects Fusion プラグインを使用して、 Net.Data サーブレットを NOF サイトに取り込むことができます。 以下のセクションでは、サーブレットの構文に従って入力し、 サーブレットを変更および実行する方法を説明します。 NetObjects Fusion を用いたサーブレットの変更および実行の方法を理解するには、 付録 E. Net.Data サーブレットと NetObjects Fusion NOF プラグインを使用するを参照してください。
HTML ファイル内から、次の構文オプションの 1 つを使用して、 サーブレット・パラメーターを入力します。
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet ?MACRO=macro_value&BLOCK=block_value&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet?MACRO=my_macro &BLOCK=my_block&field1=custno
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="macro_value"> <param name="BLOCK" value="block_value"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="my_macro.d2w"> <param name="BLOCK" value="report"> <param name="field1" value="custno"> </servlet>
パラメーター :
<param name="field1" ...
... value="custnum"
HTMLPATH パラメーター : 指定されていない HTMLPATH パラメーターを参照するエラー・メッセージが出力された場合には、 サーブレット呼び出しコマンドに HTMLPATH パラメーターを追加します。
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet ?MACRO=macro_name&BLOCK=block_value&htmlpath=html_path&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet?MACRO=my_macro &BLOCK=my_blockhtmlpath=e:\html&field1=custno
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="macro_value"> <param name="BLOCK" value="block_value"> <param name="htmlpath" value="html_path"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="my_macro"> <param name="BLOCK" value="my_block"> <param name="htmlpath" value="e:\html"> <param name="field1" value="custno"> </servlet>
OUTBUFLEN パラメーター : ユーザーのマクロの結果が 32 KB を超える場合は、 OUTBUFLEN パラメーターを指定します。これらのパラメーターが必須の場合、 それを指定しないと、予期しない結果が発生することがあります。
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet ?MACRO=macro_name&BLOCK=block_value &OUTBUFLEN=output_buffer_size&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.MacroServlet?MACRO=my_macro &BLOCK=my_block&OUTBUFLEN=48&field1=custno
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="macro_value"> <param name="BLOCK" value="block_value"> <param name="OUTBUFLEN" value="output_buffer_size"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.MacroServlet"> <param name="MACRO" value="my_macro"> <param name="BLOCK" value="my_block"> <param name="OUTBUFLEN" value="48"> <param name="field1" value="custno"> </servlet>
関数サーブレットは、直接要求を使用して Net.Data を起動し、 関数 (REXX 関数など) または SQL ステートメントのいずれかを実行する場合があります。 サーブレット用に指定するパラメーターは、 ユーザーが関数または SQL ステートメントのどちらを実行するかによって異なります。 HTML ファイル内から、次の構文オプションの 1 つを使用して、 サーブレット・パラメーターを入力します。
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=lang_env_name&FUNC=program_name&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=DTW_REXX&FUNC=my_rexx&field1=custno
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=database_lang_env_name&SQL=SQL_statement &DATABASE=database_name&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=DTW_SQL&SQL=select+*+from+myTable&DATABASE=CELDIAL
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="lang_env_name"> <param name="FUNC" value="program_name"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="DTW_REXX"> <param name="FUNC" value="myREXX"> <param name="field1" value="custno"> </servlet>
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="lang_env_name"> <param name="SQL" value="SQL_stmt_name"> <param name="DATABASE" value="database_name"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="DTW_SQL"> <param name="SQL" value="select * from employee"> <param name="DATABASE" value="CELDIAL"> </servlet>
パラメーター :
HTMLPATH パラメーター : 指定されていない HTMLPATH パラメーターを参照するエラー・メッセージが出力された場合には、 サーブレット呼び出しコマンドに HTMLPATH パラメーターを追加します。
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=lang_env_name&FUNC=program_name&htmlpath=html_path &parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=DTW_REXX&FUNC=my_rexx&htmlpath=e:\html&field1=custno
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="lang_env_name"> <param name="SQL" value="SQL_stmt_name"> <param name="htmlpath" value="html_path"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="DTW_SQL"> <param name="SQL" value="select * from employee"> <param name="htmlpath" value="e:\html"> <param name="field1" value="custno"> <param name="DATABASE" value="SAMPLE"> </servlet>
ここで html_path は、 Web サーバー・ルートの HTML ディレクトリーへのパスを指定します。 例 : htmlpath=e:\html
OUTBUFLEN パラメーター : ユーザーのマクロの結果が 32 KB を超える場合は、 OUTBUFLEN パラメーターを指定します。これらのパラメーターが必須の場合、 それを指定しないと、予期しない結果が発生することがあります。
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet ?LANGENV=lang_env_name&FUNC=program_name&OUTBUFLEN=output_buffer_size&parmnn=valuenn
例 :
http://myserver/servlet/com.ibm.netdata.servlets.FunctionServlet?LANGENV=DTW_REXX &FUNC=my_rexx&OUTBUFLEN=48&field1=custno
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="lang_env_name"> <param name="FUNC" value="program_name"> <param name="OUTBUFLEN" value="output_buffer_size"> <param name="parmnn" value="valuenn"> </servlet>
例 :
<servlet code="com.ibm.netdata.servlets.FunctionServlet"> <param name="LANGENV" value="DTW_REXX"> <param name="FUNC" value="my_rexx"> <param name="OUTBUFLEN" value="48"> <param name="field1" value="custno"> </servlet>
Net.Data は JavaBeans を提供します。この JavaBeans は、 Web サーバーを実行しなくても、Java 環境で使用することができます。 JavaBean は、オブジェクト指向プログラミング・インターフェースです。 これによって、再利用可能なアプリケーション、 またはプログラム組み立てブロックを作成することができます。 これらのオブジェクトは、Java 対応オペレーティング・システムのネットワークで使用されます。
JavaBean は、ネイティブ Net.Data DLL を使用して Net.Data を起動し、 リターン・コードおよび Net.Data 出力 (結果) を含むストリングを生成します。 JavaBeans はネイティブ DLL を使用するので、 Net.Data 関数を使用するために Web サーバーを実行させる必要はありません。
設計のヒント : Net.Data JavaBeans が戻す結果は、 ユーザーのマクロまたは関数が戻す内容に一致します。通常、これは HTML です。 結果は HTML と互換性を持つ JavaBean に渡すことを推奨します。 HTML 互換の JavaBean は、HTML を解釈し、結果を表示することができます。
JavaBeans を使用すれば、次のことが可能です。
このセクションでは、以下の JavaBean のトピックについて説明します。
Net.Data には JavaBeans があります。Java 環境を利用することで、 マクロの開発および管理に役立ちます。 JavaBeans は Java のオブジェクトで、次のインターフェースを提供しています。
Net.Data には次の 2 つの型の JavaBeans があります。
Net.Data JavaBeans は、 ネイティブ DLL ファイルを使用して Net.Data を通して実行する、 Java ベースのラッパーです。 両方とも Net.Data バージョン 2 またはそれ以降のバージョン、 および JDK バージョン 1.1 またはそれ以降のバージョンが、 インストールされている必要があります。
このセクションでは、Bean Machine などの JavaBean 開発ツールを使用した、 Net.Data JavaBeans のセットアップおよび実行の方法を説明しています。 開発ツールを使用するためのステップは、特に決まった規則はありません。 したがってツールはユーザーが選択することができます。
Net.Data Macro bean、com.ibm.netdata.beans.NetDataMacro によって、 Java を使用することで、既存のマクロを実行できるようになります。 この Bean を使用するには、Bean の Net.Data プロパティーを指定する必要があります。 指定するとマクロが使用できるようになります。
JavaBean 開発ツールとともに、 Net.Data マクロ Java Bean をセットアップするには:
構文 :
name1=value1&nameN=valueN
JavaBean 開発ツールで Net.Data マクロ JavaBean を実行するには:
Net.Data SQL bean、com.ibm.netdata.beans.NetDataSQL によって、Java を使用し、 Net.Data を介して SQL ステートメントを実行できるようになります。 この Bean を使用するには、Bean の Net.Data プロパティーを指定する必要があります。 指定するとマクロが使用できるようになります。
JavaBean 開発ツールとともに、 Net.Data SQL JavaBean をセットアップするには
構文 :
name1=value1&nameN=valueN
JavaBean 開発ツールで、 Net.Data SQL JavaBean を実行するには :