|
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.opengion.fukurou.util.URLConnect
org.opengion.fukurou.util.SOAPConnect
public class SOAPConnect
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 URLを指定します。GETの場合、パラメータは ?KEY=VALです。 args[B] : [user:passwd] BASIC認証のエリアへのアクセス時に指定します。
コンストラクタの概要 | |
---|---|
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 |
コンストラクタの詳細 |
---|
public SOAPConnect(String url, String pass, String ns, String method, String[] ks, String[] vs)
url
- 接続するアドレスを指定します。(http://server:port/dir/file.html)pass
- ユーザー:パスワード(認証接続が必要な場合)ns
- 名前空間を指定します。method
- メソッド名を指定します。ks
- 送信するメソッドパラメーターのキー一覧を指定します。vs
- 送信するパラメーターの値一覧を指定します。public SOAPConnect(String url, String pass, String ns, String method, String xmlData)
url
- 接続するアドレスを指定します。(http://server:port/dir/file.html)pass
- ユーザー:パスワード(認証接続が必要な場合)ns
- 名前空間を指定します。method
- メソッド名を指定します。xmlData
- パラメーターのXMLデータメソッドの詳細 |
---|
protected URLConnection getConnection() throws IOException
URLConnect
内の getConnection
IOException
- 入出力エラーが発生したときURLConnect.getConnection()
public static void main(String[] args) throws IOException
args
- コマンド引数配列
IOException
- 入出力エラーが発生した場合
|
openGion 5.8.3.0 | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |