概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.8.3.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.util
クラス SOAPConnect

    java.lang.Object
      org.opengion.fukurou.util.URLConnect
          org.opengion.fukurou.util.SOAPConnect

    public class SOAPConnect

extends URLConnect

SOAPConnect は、URLConnectクラスの拡張版で、SOAP接続を行うための機能を追加しています。 基本的な機能は、`URLConnect`を参照して下さい。 SOAP対応の追加機能としては、以下の2点があります。

     ①ヘッダー情報の変更
      SOAP接続では、通常のURLConnectに加えて、以下のヘッダー情報を付加しています。

      1.Content    = text/xml;charset=UTF-8"
      2.Accept     = text/xml, multipart/related, text/html, image/gif, image/jpeg,
      3.Soapaction = "[NameSpace][SOAPMethodName]"

     ②SOAPメッセージの生成機能
      SOAPメッセージは、以下のようなXML構造で定義されます。

      <env:Envelope env:xmlns="..." xsi:xmlns="...">
        <env:Body>
           <tns:[methodName] xmlns:tns="[nameSpace]">
              [methodParameter(XML)]
            </tns:[methodName]>
        </env:Body>
      </env:Envelope>

      SOAPConnectクラスでは、[methodParameter(メソッドパラメーター)]の定義方法に2種類の方法があります。

      (a)keys,valsによる指定
       keys,valsを指定することで、これらを内部的にXMLデータに変換し、パラメーター部分のXML
       情報を生成します。

       例)
         keys="param0>AAA,param0>BBB,param1>CCC,DDD"
         vals="v1,v2,v3,v4"
        [変換結果]
           <param0>
             <AAA>v1</AAA>
             <BBB>v2</BBB>
           </param0>
           <param1>
             <CCC>v3</CCC>
           </param1>
           <DDD>v4</DDD>

        この定義方法では、項目の値を"null"とすることで、XMLで言うところの
        「xsi:nil="true"」のデータを表現することもできます。

        また、キー名の先頭を'@'にすることで、項目名に名前空間のPREFIXを付加することができます。
        一般的には、JavaやRubyで実装されたWebサービスを呼び出しする場合は、必要ありませんが、
        .NETで実装されたWebサービスを呼び出しする場合は、各項目にPREFIXを付与しないと、正しく
        パラメーターを渡すことができません。

        ※現時点では、keysの階層定義は、2階層まで対応しています。
          3階層以上のXML構造を定義する場合は、postFile属性によるファイル指定又は、Body部分で直接
          XMLデータを記述して下さい。

      (b)XMLデータを直接指定
        メソッドパラメーターの部分のXMLデータを直接指定します。
        この場合、(a)のように、xsi:nil="true"や、パラメーターキーへのPREFIXの付加は、予め行って
        おく必要があります。
        なお、パラメーターキーのPREFIXは、"tns:"です。

     Usage: java org.opengion.fukurou.util.SOAPConnect [-info/-data] … url [user:passwd]

       args[*] : [-info/-data]      情報の取得か、データの取得かを指定します(初期値:-data)。
       args[*] : [-data=ファイル名] メソッドのパラメーターが記述されたXMLファイルを指定します。
       args[*] : [-out=ファイル名]  結果をファイルに出力します。ファイルエンコードも指定します。
       args[*] : [-nameSpace=名前空間]    メソッド名及びパラメータ
       args[*] : [-keys=キー一覧]   メソッドのパラメーターのキー一覧を指定します。(dataを指定した場合は無視されます)
       args[*] : [-vals=値一覧]     メソッドのパラメーターの値一覧を指定します。  (dataを指定した場合は無視されます)
       args[A] : url                ＵＲＬを指定します。GETの場合、パラメータは ?KEY=VALです。
       args[B] : [user:passwd]      BASIC認証のエリアへのアクセス時に指定します。

バージョン
  4.0
作成者
  Hiroki Nakamura
導入されたバージョン:
  JDK5.0,

コンストラクタの概要
`SOAPConnect(String url, String pass, String ns, String method, String xmlData)` コンストラクター ここでは、送信するXMLデータを直接指定するためのコンストラクターを定義しています。
`SOAPConnect(String url, String pass, String ns, String method, String[] ks, String[] vs)` コンストラクター ここでは、送信するXMLデータをキー及び値の一覧から生成するためのコンストラクターを定義しています。

メソッドの概要
`protected URLConnection` | `getConnection()` URL と ユーザー：パスワードを与えて、URLConnectionを返します。
`static void` | `main(String[] args)` サンプル実行用のメインメソッド Usage: java org.opengion.fukurou.util.SOAPConnect [-info/-data] … url [user:passwd] args[*] : [-info/-data] 情報の取得か、データの取得かを指定します(初期値:-data)。

クラス org.opengion.fukurou.util.URLConnect から継承されたメソッド
`code2Message, connect, disconnect, getCharset, getCode, getDate, getInputStream, getLength, getMessage, getMethod, getModified, getReader, getType, getUrl, readData, setCharset, setPostData, setProxy, setRequestProperty`

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

コンストラクタの詳細

### SOAPConnect

    public SOAPConnect(String url,
                       String pass,
                       String ns,
                       String method,
                       String[] ks,
                       String[] vs)

  コンストラクター ここでは、送信するXMLデータをキー及び値の一覧から生成するためのコンストラクターを定義しています。

  パラメータ:
    `url` - 接続するアドレスを指定します。(http://server:port/dir/file.html)
    `pass` - ユーザー：パスワード(認証接続が必要な場合)
    `ns` - 名前空間を指定します。
    `method` - メソッド名を指定します。
    `ks` - 送信するメソッドパラメーターのキー一覧を指定します。
    `vs` - 送信するパラメーターの値一覧を指定します。

### SOAPConnect

    public SOAPConnect(String url,
                       String pass,
                       String ns,
                       String method,
                       String xmlData)

  コンストラクター ここでは、送信するXMLデータを直接指定するためのコンストラクターを定義しています。

  パラメータ:
    `url` - 接続するアドレスを指定します。(http://server:port/dir/file.html)
    `pass` - ユーザー：パスワード(認証接続が必要な場合)
    `ns` - 名前空間を指定します。
    `method` - メソッド名を指定します。
    `xmlData` - パラメーターのXMLデータ

メソッドの詳細

### getConnection

    protected URLConnection getConnection()
                                   throws IOException

  URL と ユーザー：パスワードを与えて、URLConnectionを返します。 SOAP接続では、通常のURLConnectに加えて、以下のヘッダー情報を付加しています。 1.Content = text/xml;charset=UTF-8" 2.Accept = text/xml, multipart/related, text/html, image/gif, image/jpeg, 3.Soapaction = "[NameSpace][SOAPMethodName]"

  オーバーライド:
    クラス `URLConnect` 内の `getConnection`
  戻り値:
    URLConnectionオブジェクト
  例外:
    `IOException` - 入出力エラーが発生したとき
  関連項目:
    `URLConnect.getConnection()`

### main

    public static void main(String[] args)
                     throws IOException

  サンプル実行用のメインメソッド Usage: java org.opengion.fukurou.util.SOAPConnect [-info/-data] … url [user:passwd] args[*] : [-info/-data] 情報の取得か、データの取得かを指定します(初期値:-data)。 args[*] : [-data=ファイル名] 送信するデータが記述されたXMLファイルを指定します。 args[*] : [-out=ファイル名] 結果をファイルに出力します。ファイルエンコードも指定します。 args[*] : [-nameSpace=名前空間] メソッド名及びパラメーターの名前空間を指定します。 args[*] : [-methodName=メソッド名] メソッド名を指定します。 args[*] : [-keys=キー一覧] メソッドのパラメーターのキー一覧を指定します。(dataを指定した場合は無視されます) args[*] : [-vals=値一覧] メソッドのパラメーターの値一覧を指定します。 (dataを指定した場合は無視されます) args[A] : url ＵＲＬを指定します。GETの場合、パラメータは ?KEY=VALです。 args[B] : [user:passwd] BASIC認証のエリアへのアクセス時に指定します。

  パラメータ:
    `args` - コマンド引数配列
  例外:
    `IOException` - 入出力エラーが発生した場合

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.8.3.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.