Interstage Application Server リファレンスマニュアル(API編)
目次 索引 前ページ次ページ

第3章 Javaインタフェース> 3.1 ORBクラス

3.1.1 org.omg.CORBA.ORB.init()

名前

 org.omg.CORBA.ORB.init

形式

(1) public  static org.omg.CORBA.ORB init()
(2) public  static org.omg.CORBA.ORB init(
        java.lang.String[] args,
        java.util.Properties props ) 
(3) public  static org.omg.CORBA.ORB init(
        java.applet.Applet app,
        java.util.Properties props )

機能説明

(1)ORB(Singleton ORB)のインスタンスを返します。ORBクラスの特定のメソッド呼び出しのために使用します。
(2)アプリケーションに対する新しいORBインスタンスを生成します。このメソッドはアプリケーションからのみコールされます。
(3)アプレットに対する新しいORBインスタンスを生成します。このメソッドはアプレットからのみコールされます。

分散トランザクション連携(プレインストール型Javaライブラリ使用時)

 プレインストール型Javaライブラリを使用して分散トランザクション連携を行う場合には、プロパティに以下の記述を追加してください。
 com.fujitsu.ObjectDirector.CORBA.GlobalTransactionMode=true

 プロパティの検索は、以下の順序で行います。

  1. 形式(2)/(3)の本メソッドのpropsパラメタ
  2. Java VM起動時に渡すシステムプロパティ

分散トランザクション連携(Portable-ORB使用時)

 Portable-ORBを使用して分散トランザクション連携を行うことはできません。

パラメタ

(1) なし。

(2)

 args
 アプリケーションのmainメソッドに与えられるコマンドラインの引数。null可。
 props
 アプリケーション固有のプロパティ。null可。

(3)

 app
 アプレット。null不可。
 props
 アプレット固有のプロパティ。null可。

 org.omg.CORBA.ORB.resolve_initial_references()によってクライアント固有のイニシャルサービスのオブジェクトリファレンスを獲得したい場合、“アプリケーション作成ガイド(CORBAサービス編)”の“ネーミングサービスのイニシャルリファレンスの獲得”にしたがってargsに値を設定する必要があります。

ORB引数の設定方法

(1)パラメタargsへの設定方法
 javaコマンド実行時に指定したORB引数をパラメタargsに設定する場合は、main関数に渡される引数リストをパラメタargsへそのまま設定します。
 ORBInitRef引数指定時のjavaコマンド実行時例とプログラムの記述例を以下に示します。

  > java Sample -ORBInitRef NameService=corbaloc::nshost/NameService

public class Sample { public static void main( String[] args ) { org.omg.CORBA.ORB Orb; Orb = org.omg.CORBA.ORB.init(args, null); : : } }

 ORB引数の有無に関係なく常にmain関数に渡される引数リストをパラメタargsに設定してください。

(2)パラメタappへの設定方法
 使用するHTMLの<PARAM>タグを使用して設定します。HTMLに設定したORB引数の情報は、アプレット実行時のアプレットクラスをパラメタappに設定することで、ORBに渡されます。
 ORBInitRef引数を設定する場合を例にJBKプラグイン使用時の記述例を以下に示します。

  <HTML>
  <HEAD><!--sample.html--></HEAD>
  <TITLE>Java sample Applet </TITLE>
  <BODY>
  <OBJECT CLASSID="CLSID:BEA62964-C40B-11D1-AACA-00A0C9216A67"  WIDTH=300 HEIGHT=250>
    <PARAM NAME="TYPE" VALUE="application/x-JBK-Plugin">
    <PARAM NAME="CODE" VALUE="Sample.class">
    <PARAM NAME="ORBInitRef" VALUE="NameService=corbaloc::nshost/NameService">
    <COMMENT>
      <EMBED TYPE="application/x-JBK-Plugin"
        CODE="Sample.class" WIDTH=300 HEIGHT=250
        ORBInitRef="NameService=corbaloc::nshost/NameService" >
      </EMBED>
    </COMMENT>
  </OBJECT>
  </BODY>
  </HTML>

 <EMBED>タグ内で記述する場合は、<PARAM>タグは使用せず"ORB引数名=引数値"の形式で記述します。これらのORB引数情報はアプレットプログラム内で読み込む必要はありません。ORB内で自動的に読込みを行います。
 ORB引数の有無に関係なく常にアプレット実行時のアプレットクラスをパラメタappに設定してください。
 ORBInitRef引数、およびORBDefaultInitRef引数を複数指定する場合は、' '空白を区切り文字としてVALUE(引数)部に複数指定します(“アプリケーション作成ガイド(CORBAサービス編)”の“ネーミングサービスのイニシャルリファレンスの獲得”参照)。

復帰値

 正常終了した場合は、ORBオブジェクトが返されます。
 異常終了した場合は、以下の例外が発生します。
  org.omg.CORBA.SystemException

 システム例外発生時に設定された例外情報およびマイナーコードの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。

注意事項

使用例

 main引数をそのままCORBA::ORB_init()に渡している場合、コマンドラインからの実行時に該当の引数を設定してください。

      String  args[] = {
          "",    /* 最初の引数は無視されます */
          "-ORB_FJ_HTTP", "yes",
          "-ORB_FJ_HTTPGW", "http://host.com/od-httpgw",
          null };
      
      org.omg.CORBA.ORB  orb; 
      
      orb = org.omg.CORBA.ORB.init( args, null ); 
      String  args[] = {
          "",    /* 最初の引数は無視されます */
          "-ORBInitRef", "NameService=corbaloc::nshost:8002/NameService",
          "-ORBDefaultInitRef", "corbaloc::inithost:8002",
          null };
      
      org.omg.CORBA.ORB  orb; 
      
      orb = org.omg.CORBA.ORB.init( args, null ); 

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005