Interstage Application Server SOAPサービス ユーザーズガイド
目次 索引 前ページ次ページ

第5章 RPC方式のアプリケーションの実装> 5.5 DII方式によるRPCクライアントアプリケーション

5.5.3 プロキシ、認証などHTTP接続情報の追加(DII方式)

 DIIを使用するRPCクライアントアプリケーションで追加のHTTP接続情報を設定する方法について以下に説明します。

■プロキシを使用する方法

 プロキシ接続を使用する場合はCallオブジェクトに対してプロパティとしてプロキシ情報を設定します。

 import javax.xml.rpc.ServiceFactory;
 import javax.xml.rpc.Service;
 import javax.xml.rpc.Call;

       .....
   Service service = ServiceFactory.newInstance()
                            .createService(proxySampleServiceQName);
   Call call = service.createCall();

   // プロキシ情報を設定する場合
   call.setProperty( "com.fujitsu.interstage.soapx.proxy.use", "true");
   // ホスト名
   call.setProperty( "com.fujitsu.interstage.soapx.proxy.host", "myProxyHost");
   // ポート番号
   call.setProperty( "com.fujitsu.interstage.soapx.proxy.port", "8080");
   // ユーザ名
   call.setProperty( "com.fujitsu.interstage.soapx.proxy.user", "suzuki");
   // パスワード
   call.setProperty( "com.fujitsu.interstage.soapx.proxy.passwd","taro");
       .....

 プロキシ接続に関するプロパティは以下のとおりです。

キー

値(java.lang.String)

備考

com.fujitsu.interstage.soapx.proxy.use

"true"または"false"

プロキシ接続をする場合はtrueを指定してください

com.fujitsu.interstage.soapx.proxy.host

ホスト名

com.fujitsu.interstage.soapx.proxy.port

ポート番号

com.fujitsu.interstage.soapx.proxy.user

ユーザ名

プロキシがベーシック認証を行っている場合に指定が必要です。

com.fujitsu.interstage.soapx.proxy.passwd

パスワード

プロキシがベーシック認証を行っている場合に指定が必要です。

■Webサービスのユーザ名/パスワードを設定する方法

 Webサービスでベーシック認証を行っている場合、またはSOAPメッセージに対するユーザ認証を行っている場合は、Callオブジェクトに対してプロパティとして認証情報を設定します。
 SOAPメッセージに対するユーザ認証については、“セキュリティシステム運用ガイド”の“ユーザ認証、SOAP電子署名、XML暗号を使用する方法”の“SOAPメッセージに対するユーザ認証の設定”を参照してください。

 import javax.xml.rpc.ServiceFactory;
 import javax.xml.rpc.Service;
 import javax.xml.rpc.Call;

       .....
   Service service = ServiceFactory.newInstance()
                            .createService(basicAuthSampleServiceQName);
   Call call = service.createCall();

 // ベーシック認証情報を設定する場合
 // ユーザ名
   call.setProperty("javax.xml.rpc.security.auth.username", "suzuki");
 // パスワード
   call.setProperty("javax.xml.rpc.security.auth.password", "taro");

 Webサービスのユーザ名/パスワードに関するプロパティは以下のとおりです。

キー

値(java.lang.String)

javax.xml.rpc.security.auth.username

ユーザ名

javax.xml.rpc.security.auth.password

パスワード

■接続のタイムアウトを指定する方法

 接続先から応答がない場合に接続を切断するタイムアウト時間を指定する場合はCallオブジェクトに対してプロパティとして認証情報を設定します。

 import javax.xml.rpc.ServiceFactory;
 import javax.xml.rpc.Service;
 import javax.xml.rpc.Call;

     .....
   Service service = ServiceFactory.newInstance()
              .createService(timeoutSampleServiceQName);
   Call call = service.createCall();

   //タイムアウト時間を指定する場合(15分)
   call.setProperty("com.fujitsu.interstage.soapx.socket.timeout", 
               new Integer(15*60*1000) );
     .....

 タイムアウト時間に関するプロパティは以下のとおりです。

キー

値(java.lang.Integer)

com.fujitsu.interstage.soapx.socket.timeout

タイムアウト時間(ミリ秒)

 上記の方法でタイムアウト時間を設定しなかった場合には、デフォルトのタイムアウト時間(5分)が適用されます。


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

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