Oracle SALTでは、WSDLメッセージとOracle Tuxedo型付きバッファとの間における双方向のデータ型のマッピングをサポートしています。サービス呼出しのたびに、GWWSサーバーは、Oracle Tuxedo型付きバッファとSOAPメッセージ・ペイロード間の各メッセージを変換します。SOAPメッセージ・ペイロードは<soap:body
>要素にカプセル化されたXMLデータです。詳細は、「Oracle SALTのメッセージ変換について」を参照してください。
ネイティブOracle Tuxedoサービスについては、Oracle Tuxedoの各バッファ型は、SALTで生成されるWSDLドキュメント内ではXMLスキーマを使用して記述されます。Oracle Tuxedoサービスのリクエスト/レスポンス・バッファが通常のXML形式で表現されます。詳細は、「Oracle Tuxedoサービス用Tuxedo-to-XMLデータ型のマッピング」を参照してください。
外部Webサービスについては、各WSDLメッセージがOracle Tuxedo FML32バッファ構造としてマップされます。Oracle Tuxedoアプリケーションは、FML32バッファを入力/出力として使用してSALTプロキシ・サービスを起動します。詳細は、「外部Webサービス用XML-to-Tuxedoデータ型のマッピング」を参照してください。
Oracle SALTメッセージ変換はSOAP XMLデータとOracle Tuxedoタイプ・バッファとの間におけるメッセージの変換プロセスです。Oracle SALTでは、着信メッセージ変換および発信メッセージ変換という2つのメッセージ変換ルールを紹介しています。
着信メッセージ変換プロセスは、「Tuxedo-to-XMLデータ型マッピング・ルール」に準拠するSOAP XMLペイロードとOracle Tuxedoタイプ・バッファの変換プロセスです。着信メッセージ変換プロセスは次の2つの場合に行われます。
Oracle SALTでは、SOAPメッセージ内の<inbuf>
、<outbuf>
および/または<errbuf>
要素にOracle Tuxedoバッファ・コンテンツが囲まれています。<inbuf>
、<outbuf>
および/または<errbuf>
要素に囲まれているコンテンツを「着信XMLペイロード」と呼びます。
発信メッセージ変換プロセスは、「Tuxedo-to-XMLデータ型マッピング・ルール」に準拠するSOAP XMLペイロードとOracle Tuxedoタイプ・バッファの変換プロセスです。発信メッセージ変換プロセスは次の2つの場合に行われます。
表2-1では、着信メッセージ変換プロセスと発信メッセージ変換プロセスを比較しています。
表2-2に示すように、Oracle SALTには、Oracle Tuxedo型付きバッファをXMLドキュメントで記述するためのルール・セットが提供されています。それらのルールは、SALT WSDLドキュメント内のXMLスキーマ定義としてエクスポートされます。そのため、Oracle Tuxedoのバッファ型に関する知識をあらかじめ備えていなくても、簡単にバッファの変換を実行できます。
|
||||||
CARRAY のデータ・バイトは、SOAPメッセージ内に埋め込む前にbase64Binary でエンコードされる必要があります。このオペークなデータ・ストリームに対してbase64Binary エンコーディングを使用することにより、元のデータの内容を維持したまま、整形式かつ判読可能な形でデータを埋め込むことができます。
|
||||||
GWWSサーバーは、「UTF-8」でエンコードされたXMLドキュメントのみ受け付けます。Webサービスのクライアントが
MBSTRING バッファを使用するOracle Tuxedoサービスにアクセスする場合、SOAPリクエスト・メッセージ内ではマルチバイト文字列のペイロードが「UTF-8」エンコーディングで表現されている必要があります。
|
||||||
Oracle Tuxedo
MBSTRING データ型には、Oracle Tuxedoサービス・メタデータ・リポジトリにおいて最大バイト長を指定できます。GWWSサーバーは変換されたMBSTRING バッファの値のバイト長をチェックします。
|
||||||
XMLスキーマの組込み型である
xsd:anyType 型がこれに対応し、SOAPメッセージに格納されたXMLドキュメントに対応する型を表します。 この型を使用すると、すべての整形式XMLデータをSOAPメッセージ内でカプセル化できます。
|
||||||
VIEWまたはVIEW32の各データ型は、XMLスキーマの複合型として定義されます。 VIEWの各フィールドが、XMLスキーマの複合型における1つまたは複数のサブ要素に対応します。 サブ要素の名前はVIEWフィールド名と同じ。 サブ要素の出現回数は、VIEWフィールド定義のcount属性によって決まります。 サブ要素の値は、XMLスキーマの型に対応するVIEWフィールド・データ型で表する必要があります。
|
||||||
詳細は、「VIEW/VIEW32に関する考慮事項」を参照してください。
|
||||||
FML/FML32バッファには、基本フィールド・データごとに、データ・ディクショナリに似た基本的な定義のみを指定できます。 異なる型名を持つFML/FML32バッファごとに、特定のFML/FML32バッファ定義を適用する必要があります。
FML/FML32の各フィールドは、そのFML/FML32バッファXMLスキーマ型における1つまたは複数のサブ要素に対応します。サブ要素の名前はFMLフィールド名です。サブ要素の出現回数は、FML/FML32フィールド定義のカウントおよび必須カウント属性によって決まります。
|
||||||
|
Oracle Tuxedo STRING
型付きバッファは、NULL文字で終端された文字列を格納する場合に使用します。Oracle Tuxedo STRING
型付きバッファは自己記述型バッファです。
リスト2-1には、STRING
型付きバッファを受け付けるTOUPPER
Oracle TuxedoサービスのSOAPメッセージの例を示します。
<?xml … encoding=”UTF-8” ?>
……
<SOAP:body>
<m:TOUPPER xmlns:m=”urn:......”>
<inbuf>abcdefg</inbuf>
</m:TOUPPER>
</SOAP:body>
<xsd:element name=”inbuf” type=”xsd:string” />
Oracle Tuxedo CARRAY型付きバッファは文字配列を格納する場合に使用されます(配列内には任意の位置にNULLを含んでよい)。このバッファはデータをオペークなものとして扱うバッファで、自己記述型ではありません。Oracle Tuxedo CARRAY
型付きバッファはxsd:base64Binary
またはMIME添付ファイルにマッピングできます。デフォルトはxsd:base64Binary
です。
リスト2-2に、base64Binary
マッピングを使用してCARRAY
型付きバッファを受け付けるTOUPPER
Oracle TuxedoサービスのSOAPメッセージの例を示します。
<SOAP:body>
<m:TOUPPER xmlns:m=”urn:......”>
<inbuf>QWxhZGRpbjpvcGVuIHNlc2FtZQ==</inbuf>
</m:TOUPPER>
</SOAP:body>
<xsd:element name=”inbuf” type=”xsd:base64Binary” />
リスト2-3に、MIME添付ファイルとしてCARRAY
型付きバッファを受け付けるTOUPPER
Oracle TuxedoサービスのSOAPメッセージの例を示します。
MIME-Version: 1.0
Content-Type: Multipart/Related; boundary=MIME_boundary; type=text/xml;
start="<claim061400a.xml@example.com>"
Content-Description: This is the optional message description.
--MIME_boundary
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: 8bit
Content-ID: <claim061400a.xml@ example.com>
<?xml version='1.0' ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
..
<m:TOUPPER xmlns:m=”urn:…”>
<inbuf href="cid:claim061400a.carray@example.com"/>
</m:TOUPPER>
..
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
--MIME_boundary
Content-Type: text/xml
Content-Transfer-Encoding: binary
Content-ID: <claim061400a. carray @example.com>
...binary carray data…
--MIME_boundary--
The WSDL for carray typed buffer will look like the following:
<wsdl:definitions …>
<wsdl:types …>
<xsd:schema …>
<xsd:element name=”inbuf” type=”xsd:base64Binary” />
</xsd:schema>
</wsdl:types>
……
<wsdl:binding …>
<wsdl:operation name=”TOUPPER”>
<soap:operation …>
<input>
<mime:multipartRelated>
<mime:part>
<soap:body parts=”…” use=”…”/>
</mime:part>
<mime:part>
<mime:content part=”…” type=”text/xml”/>
</mime:part>
</mime:multipartRelated>
</input
……
</wsdl:operation>
</wsdl:binding>
</wsdl:definitions>
Oracle Tuxedo MBSTRING
型付きバッファは、マルチバイト文字配列のために使用します。Oracle Tuxedo MBSTRING
型付きバッファは次の3つの要素により構成されます。
注: | 「UTF-8」コードセット以外のマルチバイト文字列をSOAPメッセージ内に直接埋め込むことはできません。 |
リスト2-4には、MBSTRING
型付きバッファを受け付けるMBSERVICE
Oracle TuxedoサービスのSOAPメッセージの例を示します。
<?xml encoding=”UFT-8”?>
<SOAP:body>
<m:MBSERVICE xmlns:m=”http://......”>
<inbuf>こんにちは</infuf>
</m:MBSERVICE>
<xsd:element name=”inbuf” type=”xsd:string” />
警告: | Oracle SALTでは、日本語文字の「―」(EUC-JP 0xa1bd、Shift-JIS 0x815c)はUTF-16 0x2015に変換されます。 |
警告: | 別の文字セット変換エンジンを使用する場合には、この文字に対するEUC-JPまたはShift-JISのマルチバイト出力は異なることがあります。 たとえば、Java il8n文字変換エンジンではこの記号がUTF-16 0x2014に変換されます。 この結果は、Oracle SALTのデフォルトであるUTF-8への変換についても同様です。 |
警告: | 別の文字変換エンジンを使用する場合、MBSTRING に日本語文字の「―」が含まれている場合、Oracle Tuxedoサーバー・サイドのMBSTRING 自動変換機能で文字列をShift-JISまたはEUC-JPに戻すことはできません。 |
Oracle Tuxedo XML型付きバッファにはXMLドキュメントが格納されます。
リスト2-5に、株価情報のXMLドキュメントの例を示します。
リスト2-6には、XML
型付きバッファを受け付けるSTOCKINQ
Oracle TuxedoサービスのSOAPメッセージの例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<!-- "Stock Quotes". -->
<stockquotes>
<stock_quote>
<symbol>BEAS</symbol>
<when>
<date>01/27/2001</date>
<time>3:40PM</time>
</when>
<change>+2.1875</change>
<volume>7050200</volume>
</stock_quote>
</stockquotes>
<SOAP:body>
<m: STOCKINQ xmlns:m=”urn:......”>
<inbuf>
<stockquotes>
<stock_quote>
<symbol>BEAS</symbol>
<when>
<date>01/27/2001</date>
<time>3:40PM</time>
</when>
<change>+2.1875</change>
<volume>7050200</volume>
</stock_quote>
</stockquotes>
</inbuf>
</m: STOCKINQ >
</SOAP:body>
<xsd:element name=”inbuf” type=”xsd:anyType” />
注: | デフォルトのネームスペースがOracle Tuxedo XML型付きバッファに格納されてGWWSサーバーに返されると、GWWSサーバーはデフォルトのネームスペースを正規の名前に変換します。これにより、各要素にはその名前の接頭辞が付加されます。 |
注: | たとえば、デフォルトのネームスペースを持つリスト2-7のようなバッファがOracle TuxedoサービスからGWWSサーバーに返されると、GWWSサーバーは、リスト2-8のようにデフォルトのネームスペースを正規の名前に変換します。 |
<Configuration xmlns="http://www.bea.com/Tuxedo/Salt/200606">
<Servicelist id="simpapp">
<Service name="toupper"/>
</Servicelist>
<Policy/>
<System/>
<WSGateway>
<GWInstance id="GWWS1">
<HTTP address="//myhost:8080"/>
</GWInstance>
</WSGateway>
</Configuration>
<dom0:Configuration
xmlns:dom0="http://www.bea.com/Tuxedo/Salt/200606">
<dom0:Servicelist dom0:id="simpapp">
<dom0:Service dom0:name="toupper"/>
</dom0:Servicelist>
<dom0:Policy></<dom0:Policy>
<dom0:System></<dom0:System>
<dom0:WSGateway>
<dom0:GWInstance dom0:id="GWWS1">
<dom0:HTTP dom0:address="//myhost:8080"/>
</dom0:GWInstance>
</dom0:WSGateway>
</dom0:Configuration>
Oracle Tuxedo VIEWおよびVIEW32型付きバッファは、Oracle Tuxedoアプリケーションで定義されたC構造を格納する場合に使用します。VIEW構造はVIEW定義ファイルで定義する必要があります。VIEWバッファ・タイプは複数のフィールドを定義できます。
リスト2-9に、MYVIEW
というVIEW定義ファイルの例を示します。
リスト2-10には、VIEW
型付きバッファを受け付けるMYVIEW
Oracle TuxedoサービスのSOAPメッセージの例を示します。
VIEW MYVIEW
#type cname fbname count flag size null
float float1 - 1 - - 0.0
double double1 - 1 - - 0.0
long long1 - 3 - - 0
string string1 - 2 - 20 '\0'
END
<SOAP:body>
<m: STOCKINQ xmlns:m=”http://......”>
<inbuf>
<float1>12.5633</float1>
<double1>1.3522E+5</double1>
<long1>1000</long1>
<long1>2000</long1>
<long1>3000</long1>
<string1>abcd</string1>
<string1>ubook</string1>
</inbuf>
</m: STOCKINQ >
</SOAP:body>
<inbuf>
のXMLスキーマをリスト2-11に示します。
<xsd:complexType name=” view_MYVIEW”>
<xsd:sequence>
<xsd:element name=”float1” type=”xsd:float” />
<xsd:xsd:element name=”double1” type=”xsd:double” />
<xsd:element name=”long1” type=”xsd:long” minOccurs=”3” />
<xsd:element name=”string1” type=”xsd:string minOccurs=”3” />
</xsd:sequence>
</xsd: complexType >
<xsd:element name=”inbuf” type=”tuxtype:view_MYVIEW” />
Oracle Tuxedo VIEW/VIEW32バッファとXMLとの変換に関しては、次の点を考慮する必要があります。
VIEW/VIEW32
との変換するための環境を用意する必要があります。これには、VIEWディレクトリおよびシステムVIEW定義ファイルの設定が含まれます。GWWSサーバーはこれらの定義を自動的にロードします。VIEW/VIEW32
パラメータ定義とVIEW/VIEW32
定義ファイルとの整合性の厳格なチェックが提供されます。 不整合な点が見つかった場合、GWWSサーバーは起動できません。 不整合に関するメッセージがULOGファイルに出力されます。
tmwsdlgen
も同じように、起動時にOracle Tuxedoサービス・メタデータ・リポジトリのVIEW/VIEW32
パラメータ定義とVIEW/VIEW32
定義ファイルとの整合性の厳格なチェックを提供します。不整合な点が見つかった場合、GWWSサーバーは起動できません。不整合に関するメッセージがULOGファイルに出力されます。 VIEW定義ファイルをロードできない場合、tmwsdlgen
はOracle Tuxedoサービス・メタデータ・リポジトリの定義を使用してWSDLドキュメントの作成を試みます。
dec_t
はサポートされていないため、dec_t
型のVIEWフィールドを定義している場合、サービスをWebサービスとしてエクスポートできず、Oracle SALT構成ファイルのロード中にエラー・メッセージが生成されます。xsd:long
スキーマ型で64ビットの数値を表現できます。 GWWSサーバーが32ビット・モードで動作している場合、Webサービスのクライアントから32ビットの範囲を超えた値を持つxsd:long
型データが送信されると、SOAPフォルトが発生することがあります。
Oracle Tuxedo FMLおよびFML32タイプ・バッファは、Oracle Tuxedoシステムに特有の自己記述型バッファです。データ・フィールドごとに個別の識別子、出現回数、および必要に応じて長さを示す情報を保持します。
リスト2-12に、FML
型付きバッファを受け付けるTRANSFER
TuxedoサービスのSOAPメッセージの例を示します。
LOGIN
サービスでは以下のリクエスト・フィールドが使われています。
ACCOUNT_ID 1 long /* 2 occurrences, The withdrawal account is 1st, and the deposit account is 2nd */
AMOUNT 2 float /* The amount to transfer */
<SOAP:body>
<m:TRANSFER xmlns:m=”urn:......”>
<inbuf>
<ACCOUNT_ID>40069901</ACCOUNT_ID>
<ACCOUNT_ID>40069901</ACCOUNT_ID>
<AMOUNT>200.15</AMOUNT>
</inbuf>
</m:TRANSFER >
</SOAP:body>
<inbuf>
のXMLスキーマをリスト2-13に示します。
<xsd:complexType name=” fml_TRANSFER_In”>
<xsd:sequence>
<xsd:element name=”ACCOUNT_ID” type=”xsd:long” minOccurs=”2”/>
<xsd:element name=” AMOUNT” type=”xsd:float” />
</xsd:sequence>
</xsd: complexType >
<xsd:element name=”inbuf” type=”tuxtype: fml_TRANSFER_In” />
リスト2-14には、FML32
型付きバッファを受け付けるTRANSFER
Oracle TuxedoサービスのSOAPメッセージの例を示します。
LOGIN
サービスでは以下のリクエスト・フィールドが使われています。
CUST_INFO 1 fml32 /* 2 occurrences, The withdrawal customer is 1st, and the deposit customer is 2nd */
ACCOUNT_INFO 2 fml32 /* 2 occurrences, The withdrawal account is 1st, and the deposit account is 2nd */
AMOUNT 3 float /* The amount to transfer */
埋め込まれている各CUST_INFO
には、以下のフィールドがあります。
CUST_NAME 10 string
CUST_ADDRESS 11 carray
CUST_PHONE 12 long
埋め込まれている各ACCOUNT_INFO
には、以下のフィールドがあります。
ACCOUNT_ID 20 long
ACCOUNT_PW 21 carray
<SOAP:body>
<m:STOCKINQ xmlns:m=”urn:......”>
<inbuf>
<CUST_INFO>
<CUST_NAME>John</CUST_NAME>
<CUST_ADDRESS>Building 15</CUST_ADDRESS>
<CUST_PHONE>1321</CUST_PHONE>
</CUST_INFO>
<CUST_INFO>
<CUST_NAME>Tom</CUST_NAME>
<CUST_ADDRESS>Building 11</CUST_ADDRESS>
<CUST_PHONE>1521</CUST_PHONE>
</CUST_INFO>
<ACCOUNT_INFO>
<ACCOUNT_ID>40069901</ACCOUNT_ID>
<ACCOUNT_PW>abc</ACCOUNT_PW>
</ACCOUNT_INFO>
<ACCOUNT_INFO>
<ACCOUNT_ID>40069901</ACCOUNT_ID>
<ACCOUNT_PW>zyx</ACCOUNT_PW>
</ACCOUNT_INFO>
<AMOUNT>200.15</AMOUNT>
</inbuf>
</m: STOCKINQ >
</SOAP:body>
<inbuf>
のXMLスキーマをリスト2-15に示します。
<xsd:complexType name=”fml32_TRANSFER_In”>
<xsd:sequence>
<xsd:element name=”CUST_INFO” type=”tuxtype:fml32_TRANSFER_p1” minOccurs=”2”/>
<xsd:element name=”ACCOUNT_INFO” type=”tuxtype:fml32_TRANSFER_p2” minOccurs=”2”/>
<xsd:element name=”AMOUNT” type=”xsd:float” />
/xsd:sequence>
</xsd:complexType >
<xsd:complexType name=”fml32_TRANSFER_p1”>
<xsd:element name=”CUST_NAME” type=”xsd:string” />
<xsd:element name=”CUST_ADDRESS” type=”xsd:base64Binary” />
<xsd:element name=”CUST_PHONE” type=”xsd:long” />
</xsd:complexType>
<xsd:complexType name=”fml32_TRANSFER_p2”>
<xsd:element name=”ACCOUNT_ID” type=”xsd:long” />
<xsd:element name=”ACCOUNT_PW” type=”xsd:base64Binary” />
</xsd:complexType>
<xsd:element name=”inbuf” type=”tuxtype: fml32_TRANSFER_In” />
Oracle Tuxedo FML/FML32
バッファとXMLとの変換に関しては、次の点を考慮する必要があります。
FML/FML32
を相互に変換するための環境を用意する必要があります。これには、FMLフィールド表ファイルのディレクトリおよびシステムFMLフィールド定義ファイルの設定が含まれます。GWWSはこれらの定義を自動的にロードします。FML型付きバッファは、環境が正しく設定されている場合に限って処理できます。FML32
フィールド型FLD_PTR
はサポートされていません。FML/FML32
パラメータ定義とFML/FML32
定義ファイルとの整合性の厳格なチェックが提供されます。 環境設定に準拠していないFML/32
フィールドが見付かった場合、またはフィールド表のフィールド・データ型定義がOracle Tuxedoサービス・メタデータ・リポジトリのパラメータ・データ型定義と異なる場合、GWWSは起動できません。不整合に関するメッセージがULOGファイルに出力されます。
tmwsdlgen
コマンドによって、Oracle Tuxedoサービス・メタデータ・リポジトリのFML/FML32
パラメータ定義とFML/FML32
定義ファイルとの整合性がチェックされます。不整合な点が見つかった場合、警告のみが表示され、不整合が許容されます。 環境設定に準拠していないFML/32
フィールドが見付かった場合、またはフィールド表のフィールド・データ型定義がOracle Tuxedoサービス・メタデータ・リポジトリのパラメータ・データ型定義と異なる場合、tmwsdlgen
はOracle Tuxedoサービス・メタデータ・リポジトリの定義を使用してWSDLドキュメントの作成を試みます。
xsd:long
スキーマ型で64ビットの数値を表現できます。次のシナリオではSOAPフォルトが生成されます。 GWWSサーバーが32ビット・モードで動作している場合、Webサービスのクライアントから32ビットの範囲を超えた値を持つxsd:long
型データが送信されます。
Oracle Tuxedo X_C_TYPE
型付きバッファは、Oracle Tuxedo VIEW型付きバッファと同等であり、WSDLの書式も同様になります。SOAPクライアントがこれらの型を区別する必要はありません。使用方法はOracle Tuxedo VIEWバッファ型に似ていますが、SALT管理者は、このバッファ型を使用する個々のOracle TuxedoサービスについてOracle Tuxedoサービス・メタデータ・リポジトリを適切に構成する必要があります。
注: | VIEWに関して考慮する必要があるすべての事項は、X_C_TYPE型付きバッファにも該当します。 |
Oracle Tuxedo X_COMMON型付きバッファはOracle Tuxedo VIEW型付きバッファと同等ですが、COBOLプログラムとCプログラムとの間で互換性を確保する場合に使用します。フィールドの型としてはshort、long、stringのみを使用します。
Oracle Tuxedo X_OCTET
型付きバッファはCARRAY
と同等です。
注: | Oracle Tuxedo X_OCTET 型付きバッファはxsd:base64Binary タイプのみにマップできます。SALT 1.1は、Oracle Tuxedo X_OCTET 型付きバッファに対するMIME 添付ファイル・バインディングをサポートしません。 |
Oracle SALTには、カスタム型付きバッファをサポートするためのプラグイン・メカニズムがあります。 これにより、独自のXMLスキーマ定義に対するSOAPメッセージの検証、カスタム型付きバッファの割り当て、データの解析とバッファへの変換、およびその他の操作ができます。
XMLスキーマの組込み型であるxsd:anyType
型がこれに対応し、SOAPメッセージに格納されたXMLドキュメントを表します。カスタム型付きバッファを使用する際は、実際のデータをXML形式で定義および表現し、それをWebサービスのクライアントとOracle Tuxedo Webサービス・スタックとの間で伝送するようにします。XML型付きバッファの場合と同様に、SOAP本文には単一ルートのXMLバッファのみ格納できます。この点は、整合性を保つためGWWSによりチェックされます。
プラグインの詳細は、「Oracle SALTプラグインの使用」を参照してください。
Oracle SALTでは、各wsdl:message
がOracle Tuxedo FML32
バッファ構造としてマップされます。Oracle SALTには、FML32
を使用してXMLスキーマ定義を表すためのルール・セットが提供されています。外部Webサービスを呼び出すには、顧客は、対応するメッセージの外部WebサービスのXMLスキーマ定義から変換されたFML32
構造を理解する必要があります。
次の項では、Oracle Tuxedo FML32
バッファ・マッピング・ルールのWSDLメッセージについて説明します。
表2-3に、サポート対象のXMLスキーマの組込み単純なデータ型および対応するOracle Tuxedo FML32
のフィールド・データ型を示します。
次のサンプルでは、XMLスキーマの組込み単純な型のOracle Tuxedoプログラムでデータを作成する方法を示します。
表2-9に、サポート対象のXMLスキーマのユーザー定義単純なデータ型および対応するOracle Tuxedo FML32のフィールド・データ型の一覧を示します。
<xsd:anyType> |
FLD_MBSTRING |
char [] |
|
プリミティブで単純な型の同等なFML32フィールド型(表2-3の参照)
|
プリミティブで単純な型の同等なCプリミティブ・データ型(表2-3の参照)
|
||
次のサンプルでは、XMLスキーマのユーザー定義データ型のOracle Tuxedoプログラムでデータを作成する方法を示します。
常に、Oracle Tuxedo FML32バッファ型がWSDLメッセージのマッピングに使用されます。
表2-12に、Oracle SALTによって定義されたWSDLメッセージのマッピング・ルールの一覧を示します。
Oracle Tuxedo Request Buffer (Input buffer) |
||
faultcode string - - |
||