BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   BEA Jolt   |   先頭へ   |   前へ   |   次へ   |   目次   |   索引

 


パラメータ値をクリアする

Jolt クラス・ライブラリには、オブジェクトの既存の属性値を消去し、事実上オブジェクトの再利用ができるようにする clear() メソッドが用意されています。リストの「Jolt オブジェクトの再利用 (reuseSample.java)」 は、clear() メソッドを使用してパラメータ値をクリアする方法とJoltRemoteService のパラメータ値を再利用する方法を示しています。この例では、再利用するためにサービスを破棄する必要がないことを示しています。代わりに、svc.clear(); ステートメントを使用して既存の入力パラメータ値を廃棄してから addString() メソッドを再度使用しています。

Jolt オブジェクトの再利用 (reuseSample.java)

/* Copyright 1999 BEA Systems, Inc. All Rights Reserved */ 
import java.net.*; 
import java.io.*; 
import bea.jolt.*; 
/* 
* これは、各呼び出しの後に JoltRemoteService を再利用する
* 方法を示したサンプル・プログラムです。
*/ 
class reuseSample 
{ 
private static JoltSession s_session; 
static void init( String host, short port ) 
{ 
/* Tuxedo ドメインに接続する準備をする。 */ 
JoltSessionAttributes attr = new JoltSessionAttributes(); 
attr.setString(attr.APPADDRESS,"//"+ host+":" + port); 
        String username = null; 
String userrole = "sw-developer"; 
String applpasswd = null; 
String userpasswd = null; 
        /* 設定された認証レベルを調べる。 */ 
switch (attr.checkAuthenticationLevel()) 
{ 
case JoltSessionAttributes.NOAUTH: 
break; 
case JoltSessionAttributes.APPASSWORD: 
applpasswd = "secret8"; 
break; 
case JoltSessionAttributes.USRPASSWORD: 
username = "myName"; 
userpasswd = "BEA#1"; 
applpasswd = "secret8"; 
break; 
} 
        /* アイドル・タイムアウトなし (0) でログオンする。 */ 
/* ログオフするまでネットワーク接続を維持する。 */ 
attr.setInt(attr.IDLETIMEOUT, 0); 
s_session = new JoltSession(attr, username, userrole, 
userpasswd, applpasswd); 
} 
    public static void main( String args[] ) 
{ 
String host; 
short port; 
JoltRemoteService svc; 
        if (args.length != 2) 
{ 
System.err.println("Usage:reuseSample host port"); 
System.exit(1); 
} 
        /* 初期化用にホスト名とポート番号を取得する。 */ 
host = args[0]; 
port = (short)Integer.parseInt(args[1]); 
        init(host, port);  
        /* DELREC サービスのオブジェクト・リファレンスを取得する。
* このサービスには出力パラメータはなく、入力
* パラメータは 1 つのみ。
*/ 
svc = new JoltRemoteService("DELREC", s_session); 
try 
{ 
/*入力パラメータ REPNAME を設定する。 */ 
svc.addString("REPNAME", "Record1"); 
svc.call(null); 
/* 再利用する前に入力パラメータを変更する。*/ 
svc.setString("REPNAME", "Record2"); 
svc.call(null); 
            /* 入力パラメータを単に廃棄する。 */ 
svc.clear(); 
svc.addString("REPNAME", "Record3"); 
svc.call(null); 
} 
catch (ApplicationException e) 
{ 
System.err.println("Service DELREC failed: "+ 
e.getMessage()+" "+ svc.getStringDef("MESSAGE", null)); 
} 
        /* ログオフし、オブジェクトを廃棄する。 */ 
s_session.endSession(); 
} 
}

 

先頭へ戻る 前のトピックへ 次のトピックへ