orbd.1 revision 1178
." This code is free software; you can redistribute it and/or modify it
." CA 95054 USA or visit www.sun.com if you need additional information or
\f3orbd\fP ツールに含まれるサーバーマネージャーを使うと、クライアントは CORBA 環境でサーバー上にある持続オブジェクトを透過的に検索して呼び出すことができます。持続サーバーは、ネームサービスに持続オブジェクト参照を発行する際、サーバーのポート番号の代わりに OBRD のポート番号をオブジェクト参照に含めます。持続オブジェクト参照のオブジェクト参照に ORBD ポート番号を含めることには、次のような利点があります。
ネームサービスにあるオブジェクト参照が、サーバーのライフタイムと無関係になる。オブジェクト参照は、始めてインストールされたときはネームサービスのサーバーによりネームサービスに発行されますが、その後は、サーバーの開始またはシャットダウンの回数にかかわらず、ORBD がいつでも呼び出したクライアントに正しいオブジェクト参照を返します。
ORBD のサーバーマネージャーにアクセスするには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。サーバーマネージャーの詳細については、このドキュメントの\f2「サーバーマネージャー」\fPを参照してください。
ネームサーバーを起動するポートの番号を指定します。\f2orbd\fP は、起動されると、このポート上で着信要求を待機します。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。 (必須)
ORBD を起動するポートを指定します。 ORBD は、このポートで、持続オブジェクトに対する要求を受け取ります。このポートのデフォルト値は 1049 です。 このポート番号は持続 Interoperable Object References (IOR) のポートフィールドに追加されます。(省略可)
\f2servertool\fP を使用して登録された持続サーバーが正常に動作していることを ORBD が確認する回数を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可)
\f2servertool\fP を使用して登録された持続サーバーを再起動してから、位置転送の例外を送信するまでの ORBD の待機時間を指定します。デフォルト値は 1,000 ミリ秒です。 「ミリ秒」の指定値は有効な整数値である必要があります。(省略可)
Java 仮想マシンに \f2option\fP を渡します。 \f2option\fP には、java(1)のリファレンスページに記載されているオプションを 1 つ指定します。たとえば、\f3\-J\-Xms48m\fP と指定すると、スタートアップメモリーは 48M バイトに設定されます。\f3\-J\fP を使って背後の実行環境にオプションを渡すことはよく行われています。
http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#CORBA%20objectにネーミングを可能にする CORBA サービスです。 ネーミングは名前をオブジェクト参照にバインドすることにより可能になります。
http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlGlossary.html#name%20bindingはネームサービスに格納され、クライアントは名前を与えて目的のオブジェクト参照を取得できます。
ORBD は、クライアントまたはサーバーを実行する前に起動します。ORBD には、持続ネームサービスおよび一時ネームサービスが組み込まれています。 これらはどちらも COS ネームサービスの実装です。
\f3「持続」ネームサービス\fPは、ネーミングコンテキストに対して持続性を提供します。つまり、この情報は、サービスの停止や起動後にも維持され、サービスに障害が発生した場合でも回復できます。ORBD を再起動すると、持続ネームサービスはネーミングコンテキストのグラフを復元し、すべてのクライアントとサーバーの名前のバインディングが保持されます。
下位互換性のため、旧バージョンの JDK に同梱されていた\f3一時ネームサービス\fPが、今回のリリースの J2SE にも同梱されています。一時ネームサービスでは、ネームサービスの実行中にのみネーミングコンテキストが保持されます。サービスが中断されると、ネーミングコンテキストは失われます。
\f2\-ORBInitialPort\fP 引数は、\f2orbd\fP の必須のコマンド行引数で、ネームサービスが実行されるポートの番号を設定するために使われます。以下の説明では、Java\ IDL Object Request Broker Daemon 用にポート 1050 を使用できることを前提としています。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。
これで ORBD が実行され、サーバーとクライアントのアプリケーションを実行できるようになります。クライアントとサーバーのアプリケーションは、実行時に、ネームサービスが実行されているポートの番号 (必要な場合はさらにマシン名) を認識している必要があります。これを実現する 1 つの方法は、次のコードをアプリケーションに追加することです。
ORB orb = ORB.init(args, props);
この例では、ネームサービスは、ホスト MyHost のポート 1050 上で実行されます。別の方法として、コマンド行からサーバーまたはクライアントのアプリケーションを実行するときに、ポート番号またはマシン名あるいはその両方を指定する方法もあります。たとえば、次のコマンド行オプションを使用して、「HelloApplication」を起動できます。
ネームサービスを停止するには、適切なオペレーティングシステムコマンドを使用します。 たとえば、Solaris では \f2pkill orbd\fP を使用し、\f2orbd\fP が実行されている DOS ウィンドウでは \f2Ctrl+C\fP キーを使用します。一時ネームサービスの場合は、サービスが終了されると、ネームサービスに登録された名前が消去される場合があります。Java IDL ネームサービスは、明示的に停止されるまで実行されます。
ORBD のサーバーマネージャーにアクセスして持続サーバーを実行するには、servertool(1) を使用してサーバーを起動する必要があります。 servertool は、アプリケーションプログラマが、持続サーバーの登録、登録解除、起動、およびシャットダウンを行うためのコマンド行インタフェースです。servertool を使用してサーバーを起動する場合は、\f2orbd\fP が実行されている場所と同じポートとホストで起動する必要があります。サーバーを異なるポートで実行すると、ローカルコンテキスト用にデータベースに保存されている情報が無効になり、サービスが正しく動作しません。
http://java.sun.com/javase/6/docs/technotes/guides/idl/jidlExample.htmlを使用し、チュートリアルの手順に従って、\f2idlj\fP コンパイラと \f2javac\fP コンパイラを実行します。サーバーマネージャーを実行するには、次の手順に従ってアプリケーションを実行します。
\f21050\fP はネームサーバーを実行するポートです。\f2\-ORBInitialPort\fP は必要なコマンド行の引数です。Solaris ソフトウェアの使用時は、1024 より小さいポートでプロセスを開始する場合は、root ユーザーになる必要があります。 このため、1024 または 1024 より大きいポートを使用することをお勧めします。
前回の手順と同様にネームサーバー (\f2orbd\fP) のポートを指定します。 たとえば \f2\-ORBInitialPort 1050\fP のようになります。\f2servertool\fP は、ネームサーバーと同じポート上で起動する必要があります。
この例の \f2\-ORBInitialHost localhost\fP は省略することができます。 ネームサーバーが Hello クライアントとして同一ホスト上で動作しているからです。ネームサーバーが別のホストで動作している場合は、IDL ネームサーバーが動作しているホストを \f2\-ORBInitialHost\fP \f2nameserverhost\fP で指定します。