Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 解説
Object Accessアダプタのサービスリクエスタとのインターフェースで使用する電文には,要求電文と応答電文(Fault情報を含む)があります。Object Wrapperで使用するIDLおよびObject WrapperのIDLと電文の形式変換について次に示します。
Object AccessアダプタがサポートしているIDLを次に示します。
表2-14 IDL定義のサポート範囲
| IDL | 備考 |
|---|---|
| module定義 | − |
| interface定義 | 継承定義は使用不可 |
| operation定義 | − |
| typedef定義 | sequence型だけ |
| struct定義 | − |
| exception定義 | − |
表2-15 operation定義のサポート範囲
| IDL | 備考 |
|---|---|
| in引数 | − |
| out引数 | − |
| inout引数 | − |
| リターン値 | − |
| raises定義 | ユーザ例外は1つだけ |
表2-16 IDLデータ型のサポート範囲
| IDL | 備考 |
|---|---|
| long | − |
| float | − |
| string | 文字列長は指定不可 |
| any | 「(4) any型の扱い」を参照してください。 |
| struct | − |
| sequence | 配列サイズは指定不可 |
Object WrapperのIDLの定義型と電文で扱う型情報で変換する内容を次に示します。
表2-17 型変換が行われるIDL型
| Object WrapperのIDL | 電文 |
|---|---|
| typedef sequence<octet> OctSeq | xsd:string |
| struct Binary | xsd:base64Binary |
Object WrapperのIDLに定義したstring型は,SJISコードとして扱います。文字コード変換の対象には,型変換でstring型に変換される「typedef sequence<octet> OctSeq」を含みます。文字コード変換対象の,Object WrapperのIDLを次に示します。
表2-18 文字コード変換が行われるIDL型
| Object WrapperのIDL | 電文 |
|---|---|
| method_name | xsd:string |
| typedef sequence<octet> OctSeq | xsd:string |
Object AccessアダプタでIDLのCORBA.Anyは,単純型(primitive型)と複合型(complex型)のsequence<octet>の値が扱えます。
CORBA.Anyの電文での表現,および電文の各要素に指定できる値を次に示します。
| <xsd:complexType name="CORBA.Any"> <xsd:sequence> <xsd:elementname="type" type="xsd:string" maxOccurs="1" minOccurs="1"/> <xsd:elementname="value" type=xsd:string" maxOccurs="1" minOccurs="1" /> </xsd:sequence> </xsd:complexType> |
表2-19 type要素とvalue要素の指定値
| Object WrapperのIDL | type要素の値 | value要素の値 |
|---|---|---|
| long | long | -2147483648から2147483647の数字 |
| float | float | 単精度の浮動小数点文字列 |
| typedef sequence<octet>OctSeq | EComm2.OctSeq | 単数・複数の文字 |
| struct Binary | EComm2.Binary | base64Binary表記文字列 |
All Rights Reserved. Copyright (C) 2012, 2019, Hitachi, Ltd.