9.1 RFIServiceクライアント・クラスの使用

LANSA Integrator

9.1 RFIServiceクライアント・クラスの使用


RFIServiceは、リモート・ファンクションの呼び出しプログラミングに使用されるクライアント・クラスです。

RFIServiceのインスタンスを作成するには、スタティックなgetInstanceメソッドを使用します。このメソッドにはプロパティ・パラメータが必要です。これらのプロパティは、ホスト接続の通信特性を制御します。

プロパティ

説明

rfi.server

ホスト・プロトコルとアドレス http://your.own.url:port

rfi.proxy

プロキシー・サーバー

rfi.user

基本認証ユーザー

rfi.password

基本認証パスワード

rfi.agent

ホスト・エージェント・プログラム
省略値 - /cgi-bin/jsmdirect

rfi.protocol.version

Javaシリアライゼーション・バージョン - 1または2
省略値 - JVM

rfi.protocol.encoding

HTTPプロトコル見出しエンコーディング
省略値 - ISO8859_1

rfi.authentication.encoding

HTTP基本認証エンコーディング
省略値 - ISO8859_1

rfi.server.trusted

信頼ストアにピア証明書が含まれない場合は、SSL接続に必要です。
値が真の場合、サーバー証明書が信頼されます。

Properties properties = new Properties () ;

properties.put ( "rfi.server", "http://your.own.url:port" ) ;

RFIService service = RFIService.getInstance ( properties ) ;

RFIServiceには、シリアライズされたオブジェクトを送受信する2つのメソッドがあります。

getObjectメソッドは、指定したサービス名でホスト・サーバーからシリアライズされた応答オブジェクトを受信する場合に使用されます。

Object getObject ( String service ) 

Object getObject ( RFIObject service ) ;

Object object = service.getObject ( "EMPLOYEE-FETCH" ) ;

putObjectメソッドは、シリアライズされたオブジェクトをホスト・サーバーに送信し、この指定サービスから応答オブジェクトを受信します。

Object putObject ( String service, Object sendObject ) ;

Object putObject ( RFIObject sendObject ) ;

Object object = service.putObject ( "EMPLOYEE-UPDATE", employee ) ;

ホストからの応答状況が成功ではない場合、RFIExceptionが投げられます。

応答のコンテンツ・タイプが「アプリケーション/x-java-シリアライズ-オブジェクト」ではない場合、RFIExceptionが投げられます。

コンテンツが返されない場合、nullオブジェクト参照が返されます。それ以外の場合は、コンテンツがデシリアライズされてオブジェクト参照が返されます。

RFIObjectインターフェースには、サービス名を返すメソッドが1つあります。

このメソッドを使用すると、sendObjectはサービス名を指定できるため、Stringサービス名パラメータの必要性がなくなります。

public interface RFIObject

{

    public String getService () ;

}

RFIExceptionクラスには、応答状況とメッセージにアクセスできるメソッドが複数あります。

メソッド

説明

int getStatus ()

応答状況コードを取得します。

String getMessage ()

応答状況メッセージを取得します。

byte[] getContent ()

応答内容を取得します。

Enumeration propertyNames ()

応答プロパティを取得します。

getProperty ( String property )

応答プロパティを取得します。