9.2. IM-BIS で外部連携として利用できるWebサービスの仕様¶
IM-BIS の外部連携機能で利用できる「Webサービス」(SOAP/REST)の仕様について説明します。
Contents
9.2.2. リクエストの仕様¶
- IM-BIS で利用できるWebサービスのリクエスト形式に関する仕様は、以下の通りです。
SOAP/REST共通のリクエストの仕様¶
リクエストパラメータとマッピングできる画面アイテムは、ファイルアップロード以外の「入力アイテム」、「汎用アイテム」の隠しパラメータです。コラム
- 「互換用アイテム」は正しく値の受け渡しが行われない場合がありますので、利用しないでください。
- 「共通マスタ系アイテム」、「関数」、「採番」はレスポンスとのマッピングの場合に利用できます。
サービスタイプ「SOAP」の仕様¶
SOAPのWebサービスでは、「文字型(Varchar)」「数値型(Number)」「日付型(Date)」「論理型(Boolean)」のデータを扱うことができます。¶
SOAPのWebサービスでのリクエストパラメータでは、「文字型(Varchar)」「数値型(Number)」「日付型(Date)」「論理型(Boolean)」のデータを扱うことができます。数値のデータについて、小数を扱う場合には、桁落ちの可能性がありますので、注意してください。リクエスト、レスポンスとも数値に関して有効数字範囲のチェックは行っておりません。なお、数値の精度を保証したい場合には、数値を文字型項目に格納し、関数で型変換を行ってからご利用ください。
WSDLに記載がないパラメータを扱うことはできません。¶
IM-BIS の外部連携(SOAP)では、WSDLをインタフェースとしてWebサービスのパラメータを作成するため、WSDLに定義されていない情報をパラメータに含めることはできません。
SOAPのWSDLが1つのURLで完結していない場合には、読み込むことができません。¶
IM-BIS の外部連携(SOAP)では、異なる名前空間に属するXML SchemaをインポートしてWSDLを定義することはできません。本項に該当する例には、 IM-Workflow の案件状態詳細情報のWebサービスがあります。本項に合致する場合には、データソース定義画面ではエラーが発生しませんが、Webサービスの実行時にエラーが発生します。
IM-BIS で扱うことのできるSOAPのWebサービスには、注意事項があります。¶
IM-BIS でSOAPのWebサービスと連携するためには、以下の注意事項があります。
IM-BIS のデータソース定義では、SOAPエンコーディング、SOAPリクエストのAttribute属性、SOAPFaultには対応しておりません。
SOAPレスポンスヘッダを IM-BIS で扱うことはできません。
SOAPのリクエスト、レスポンスパラメータでは、再帰を含むデータ構造を読み込むことはできません。本事項については、「 IM-BIS リリースノート 」の制限事項も参照してください。
外部連携(SOAP連携)のWSDLが対応しているデータ型¶
外部連携(SOAP連携)におけるWSDLのデータ型については、以下のXMLスキーマ( http://www.w3.org/2001/XMLSchema )(English)に対応しています。XMLスキーマ、javaのクラス、データソース定義のデータ型の関係は、以下の表を参照してください。
Type javaのクラス データソース定義のデータ型 フォーマット duration java.util.Date date “yyyy-MM-dd’T’HH:mm:ssZ” dateTime java.util.Date date “yyyy-MM-dd’T’HH:mm:ss” time java.util.Date date “hh:mm:ss” date java.util.Date date “yyyy-MM-dd” gYearMonth java.util.Date date “yyyy-MM” gYear java.util.Date date “yyyy” gMonthDay java.util.Date date “MM-dd” gDay java.util.Date date “dd” gMonth java.util.Date date “MM” string java.lang.String string normalizedString java.lang.String string token java.lang.String string language java.lang.String string Name java.lang.String string NCName java.lang.String string ID java.lang.String string IDREF java.lang.String string ENTITY java.lang.String string NMTOKEN java.lang.String string boolean java.lang.Boolean boolean float java.math.BigDecimal number double java.math.BigDecimal number decimal java.math.BigDecimal number integer java.math.BigDecimal number nonPositivInteger java.math.BigDecimal number negativeInteger java.math.BigDecimal number long java.math.BigDecimal number int java.math.BigDecimal number short java.math.BigDecimal number byte java.math.BigDecimal number nonNegativeInteger java.math.BigDecimal number positiveInteger java.math.BigDecimal number unsignedLong java.math.BigDecimal number unsignedInt java.math.BigDecimal number unsignedShort java.math.BigDecimal number unsignedbyte java.math.BigDecimal number
サービスタイプ「REST」の仕様¶
RESTのWebサービスでは、リクエストヘッダへデータマッパーから固定値やフォームの値をマッピングすることができます。¶
RESTのWebサービスでのリクエストパラメータでは、リクエストヘッダに対して、データマッパーから固定値やフォームに入力した値をマッピングすることができます。
9.2.3. レスポンスの仕様¶
- IM-BIS で利用できるWebサービスのレスポンス形式に関する仕様は、以下の通りです。
SOAP/REST共通のレスポンスの仕様¶
レスポンスの階層についての制約はありません。¶
IM-BIS で利用するWebサービスのレスポンスの階層について制限はありません。
レスポンスフィールドと画面アイテムでは、マッピングの際にデータ型をそろえる必要があります。¶
異なるデータ型でもマッピングを設定することはできますが、実行時に正しく動作しない可能性があります。異なるデータ型をマッピングする場合、データ型変換関数を利用して、データ型がそろうようにレスポンスフィールドの値を変換してください。
コラム
IM-BIS での外部連携で、SOAPを利用する場合には、Apache Axis2の現行仕様に基づく制限によって正常に動作しない場合があります。
お客さまがWebサービスを開発して利用する場合には、RESTでのご利用を推奨いたします。