バージョン 6.3.3
 —  オペレーション  —

Web I/O インターフェイスサービスの設定

Web I/O インターフェイスは、Natural アプリケーションを Web ブラウザで実行するために使用します。 次の場合は、Natural アプリケーションを Web ブラウザで実行する必要があります。

Web I/O インターフェイスは、2 つのコンポーネントで構成されています。Web I/O インターフェイスクライアントと Web I/O インターフェイスサービスです。 Natural アプリケーションを Web ブラウザで実行するユーザーは、特定の URL を Web I/O インターフェイスクライアントに送信します。 Web I/O インターフェイスクライアントは、ユーザーに代わって、Web I/O インターフェイスサービスに Natural セッションを作成するように要求します。 その後、Natural セッションの出力が Web ページとしてWeb ブラウザに送信されます。

Web I/O インターフェイスクライアントは、Web サーバーまたはアプリケーションサーバーにインストールします。 ネットワーク内の任意のマシンにインストールできます。 Web I/O インターフェイスクライアントのインストールおよび設定は、「Web I/O インターフェイスクライアントの設定」で説明します。

Web I/O インターフェイスサービスは、Natural がインストールされているマシンにインストールします。 Web I/O インターフェイスサービスのインストールおよび設定は、このドキュメントで説明します。

このドキュメントでは、次のトピックについて説明します。


Web I/O インターフェイスサービスのインストール

Natural for Windows のインストール時に該当のオプションを設定した場合は、Web I/O インターフェイスサービスもインストールされます。 これは、セットアップタイプ[Development Client for Single Point of Development (SPoD)]の一部です。 詳細については、『インストール』ドキュメントを参照してください。

Top of page

Web I/O インターフェイスサービスの設定

Web I/O インターフェイスサービスは、Windows サービスとしてインストールされます。 Windows サービス管理コンソールに[Software AG Natural n.n Web I/O Service]とリストされます。 このサービスは、Windows の起動時に自動的に開始されます。 デフォルトでは、このサービスはポート番号 2900 で待機します。 インストール時に他のポート番号を選択できます。

Web I/O インターフェイスサービスの設定は、Windows レジストリに保存されます。 Web I/O インターフェイスサービスがインストールされたときのデフォルト値を使用しない場合は、必要に応じてサービスの設定を変更できます。 これについては、以降のトピックを参照してください。

Web I/O インターフェイスサービスコマンド

Natural bin ディレクトリに保存されているプログラム nwosvcd.exe は、サービスコマンドを実行するのに使用されます。 次のサービスコマンドは、Windows のコマンドプロンプトウィンドウで指定できます。

コマンド 説明
NWOSVCD –INSTALL

Web I/O インターフェイスサービスをインストールします。 サービスはスタートアップの種類が[自動]でインストールされます。

スタートアップの種類を変更する場合は、Windows サービス管理コンソールを開く必要があります。 Windows XP では、これは[管理ツール]にあります。 Software AG Natural n.n Web I/O Service のプロパティを開き、目的のスタートアップの種類を選択します。

NWOSVCD –REMOVE

Web I/O インターフェイスサービスをシステムから削除します。

NWOSVCD –CONSOLE

Web I/O インターフェイスサービスを Windows コンソールアプリケーションとして実行します。 この場合は、アイコンがタスクバーの通知領域に表示されます。 このアイコンのコンテキストメニューを表示すると、以下のコマンドを使用できます。

  • バージョン情報
    Web I/O インターフェイスサービスのバージョンが表示されます。

  • 終了
    Web I/O インターフェイスサービスを停止するかどうかを確認するダイアルログボックスが表示されます。

NWOSVCD -CONFIG –PORT=nnnn –USEREXIT1=pathname –USEREXIT2=pathname

Web I/O インターフェイスサービスの設定を変更します。 以下のキーを指定できます。

–PORT=nnnn

ポート番号。

-USEREXIT1=pathname

USEREXIT1 によって定義されたライブラリには、以下の関数が含まれている必要があります。

int nwo_CheckUsernameAndPassword(const char *pUsername, const char *pPassword, const char *pNewPassword, char *pErrorMessage, HANDLE *pHandleUser)

キー USEREXIT1 が設定されている場合は、関数 nwo_CheckUsernameAndPassword がユーザー名とパスワードをチェックする役割を果たします。 新しいパスワードを受け取った場合は、ユーザー出口 1 もパスワード変更の役割を果たします。

エラーの場合は、関数のリターンコードは "0" である必要があります。この場合は、pErrorMessage がクライアントに返されます。 ユーザー名およびパスワードが正しい場合は、リターンコードの値は "0" 以外である必要があります。

–USEREXIT2=pathname

USEREXIT2 によって定義されたライブラリには、以下の関数が含まれている必要があります。

  • int nwo_Messages(int *iNumberOfMessages, char *pMessage[])

    キー USEREXIT2 が設定されている場合は、新しいクライアントが受け入れられたときに関数 nwo_Messages が呼び出され、この関数が返したメッセージがクライアントに送信されます。 ユーザー出口 2 を使用して、次のようなメッセージを送信できます。"メンテナンスのため、Natural アプリケーション XXXXX は、次の月曜日の 18:00 から 19:00 まで使用できません。"

    エラーの場合は、関数のリターンコードは "0" である必要があります。

    関数 nwo_Messages が呼び出された後、関数 nwo_FreeMessages が呼び出されます。

  • int nwo_FreeMessages(int iNumberOfMessages, char *pMessage[])

    iNumberOfMessages:メッセージの数です。

    pMessage:メッセージの配列です。

    キー USEREXIT2 が定義されている場合は、関数 nwo_Messages で割り当てられたリソース(通常はメモリ)を解放するために、関数 nwo_FreeMessages が呼び出されます。

    エラーの場合は、関数のリターンコードは "0" である必要があります。

設定からユーザー出口を削除するには、以下のコマンドを入力します。

NWOSVCD –CONFIG –USEREXIT1=

設定を変更したら、Web I/O インターフェイスサービスを再起動する必要があります。

例:独自の設定を使用した Web I/O インターフェイスサービスの開始

この例では、ポート番号 3344 とユーザー出口 1 C:\Program Files\My Company Name\User Exit1\libuserexit1.dll で新しい設定を作成する方法について説明します。

Start of instruction set独自の設定で Web I/O インターフェイスサービスを開始するには

  1. Windows サービス管理コンソールを開き、Web I/O インターフェイスサービスを停止します。

  2. Windows のコマンドプロンプトウィンドウを起動します。

  3. nwosvcd.exe ファイルが保存されている Natural bin ディレクトリに移動します。

  4. 次のコマンドを入力して、新しいポート番号と新しいユーザー出口 1 を設定します。

    NWOSVCD -CONFIG –PORT=3344 –USEREXIT1="C:\Program Files\My Company Name\User Exit1\libuserexit1.dll"
  5. Windows サービス管理コンソールに戻り、Web I/O インターフェイスサービスを開始します。

Top of page

イベントログ

Web I/O インターフェイスサービスは、情報、警告、およびエラーイベントを Windows イベントビューアに保存します。

イベントの例:

エラーの状況については、Windows イベントビューアに保存されている Web I/O インターフェイスサービス関連のイベントを確認してください。

Top of page

Natural を開始するためのバッチファイル

Natural セッションを開始するために、Web I/O インターフェイスサービスはバッチファイルを実行します。 バッチファイルは、Natural セッション用に環境を準備し、最終的に Natural を開始します。

バッチファイルは、Web I/O インターフェイスクライアントから特定のパラメータを受け取ります。 パラメータは、バッチファイル自体で評価されるか、Natural に渡されます。 Natural セッションを開始するクライアントは、使用するバッチファイルを指定できます。 ファイルの場所と指定方法については、「コンフィグレーションファイルでの Natural セッションの定義」を参照してください。

nwo.bat という名前のサンプルバッチファイルが、Natural bin ディレクトリにあります。 次の内容が含まれています。

@echo off
set IPAddress=""
set ClientID =""
set Argument3=""
set Argument4=""
set NaturalParameters=""
 
IF %1 NEQ "null" goto IPAddress
:IPAddress
set IPAddress=%~1
 
IF %2 NEQ "null" goto ClientID
:ClientID
set ClientID=%~2
 
IF %3 NEQ "null" goto Argument3
:Argument3
set Argument3=%~3
 
IF %4 NEQ "null" goto Argument4
:Argument4
set Argument4=%~4
 
IF %5 NEQ "null" goto NaturalParameters
:NaturalParameters
set NaturalParameters=%~5
 
rem echo %IPAddress%
rem echo %ClientID%
rem echo %Argument3%
rem echo %Argument4%
rem echo %NaturalParameters%
 
natrt.exe %NaturalParameters% webio=on :

Natural セッションを開始する独自のバッチファイルを作成できます。 この場合は、上記のサンプルバッチファイルのように、natrt.exe で Natural を開始し、パラメータ WEBIO=ON を使用する必要があります。 上記のサンプルでは、バッチファイルが Natural bin ディレクトリに含まれている必要があります。 含まれていない場合は、natrt.exe への適切な絶対パスまたは相対パスを指定する必要があります。

Web I/O インターフェイスクライアントの特定のバッチファイルを参照するために、絶対パスまたは相対パスを指定することができます。 相対パスを指定した場合は、バッチファイルは以下のルールに従って検索されます。

  1. nwosvcd.exe が保存されているディレクトリ内。 これは、Natural bin ディレクトリです。

  2. システムディレクトリ内。 これは、システム関数 GetSystemDirectory を提供するディレクトリです。

  3. Windows ディレクトリ内。 これは、システム関数 GetWindowsDirectory を提供するディレクトリです。

  4. PATH 環境変数にリストされているディレクトリ内。

引数

バッチファイルは以下の引数を受け取ります。

順番 引数 説明
1 IPAddress セッションが開かれるクライアント IP アドレスです。

注意:
プロキシがある場合は、これはクライアントワークステーションの IP アドレスではなく、 プロキシの IP アドレスです。

2 ClientID ログオンページのユーザー名はクライアント ID として渡されます。
3 Argument3 予約済み(将来的に使用される予定)です。
4 Argument4 予約済み(将来的に使用される予定)です。
5 NaturalParameters Natural のいずれのパラメータでも指定できます。 パラメータは、セッションのコンフィグレーションファイルで定義されるか、ログオンページで入力されます。 次に示すのは、コンフィグレーションファイル内の対応するエントリの一例です。

<natural_parameter>parm=nwoparm\ stack=(logon\ mylib;start-program;fin)<natural_parameter>

ログオンページで選択した言語は、最初のエレメントとして "ulang=x" の形式で Natural パラメータに追加されます。

引数 1 と 2 は、クライアントの監査、特定の PC からのアプリケーションの実行(IP アドレスの識別)、統計の生成、特別な操作の実行などに使用できます。

環境変数

バッチファイルでは、Natural セッション用に複数の環境変数を設定できます。

NWO_ENABLE_ACK=["YES" | "NO"]

この環境変数は、非同期画面(SET CONTROL N)で使用されます。

YES 非同期画面をクライアントに送信すると、Natural は ACK パッケージを受け取るまで待機してから次の画面を送信します。
NO 待機せずに非同期画面を送信します。 デフォルト値です。
NWO_TIMEOUT=[number-of-seconds]

Natural がクライアントからの入力を待機する最長時間(秒単位)です。この時間が経過するとセッションを終了します。 秒数が "0" の場合は、Natural は無限に待機します(タイムアウトなし)。 デフォルト値は "0" です。

タイムアウトでエラー NAT5466 が返されます。 Natural では、アプリケーションでこのエラーを処理でき、続行するのか終了するのかを決定できます。

Top of page