WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

カスタム Java

カスタム Java™ 変換を使用すると、マッピングに使用される独自の Java コードを入力できます。

グラフィカル・データ・マッピング・エディターで、「カスタム変換」リストから「カスタム Java」を選択します。 変換プロパティーを使用して、ワークスペースの Java プロジェクトから Java クラスの Java メソッドを選択できます。 「値」列のコンテンツ・アシストを使用して、ソース・スキーマの必要なエレメントを割り当てることができます。

マップに指定する Java クラスには、出力エレメントの値の適切なタイプを返し、接続入力の適切なタイプを指定したパラメーターをとる静的メソッドが含まれている必要があります。

例えば、タイプが xs:stringxs:decimal、および xs:boolean の 3 つの入力エレメントと xs:decimal の出力エレメントを持つカスタム Java 変換で使用できる Java メソッドを以下に示します。

	public static BigDecimal calSomething(String memType, BigDecimal stdCost, boolean flag) {
		BigDecimal actualCost = stdCost;
		if (flag & memType.startsWith("gold")) {
			BigDecimal discRate = new BigDecimal(0.9);
			actualCost = actualCost.multiply(discRate);
		}			
		return actualCost;
	}

以下の表は、スキーマ・タイプ、Java タイプ、およびWebSphere® Message Broker・ツリー・タイプの間のマッピングを示しています。

表 1. スキーマ・タイプ、Java タイプ、およびWebSphere Message Broker・ツリー・タイプのマッピング
スキーマ・タイプ Java タイプ ブローカー・メッセージ・ツリー・タイプ
xs:anyURI java.lang.String CHARACTER
xs:base64Binary byte[] BLOB
xs:boolean boolean、java.lang.Boolean BOOLEAN
xs:byte byte、java.lang.Byte INTEGER
xs:date javax.xml.datatype.XMLGregorianCalendar DATE
xs:dateTime javax.xml.datatype.XMLGregorianCalendar TIMESTAMP
xs:dayTimeDuration javax.xml.datatype.Duration INTERVAL
xs:decimal java.math.BigDecimal DECIMAL
xs:double double、java.lang.Double FLOAT
xs:duration javax.xml.datatype.Duration INTERVAL
xs:float float、java.lang.Float FLOAT
xs:gDay javax.xml.datatype.XMLGregorianCalendar DATE
xs:gMonth javax.xml.datatype.XMLGregorianCalendar DATE
xs:gMonthDay javax.xml.datatype.XMLGregorianCalendar DATE
xs:gYear javax.xml.datatype.XMLGregorianCalendar DATE
xs:gYearMonth javax.xml.datatype.XMLGregorianCalendar DATE
xs:hexBinary byte[] BLOB
xs:int int、java.lang.Integer INTEGER
xs:integer java.math.BigInteger DECIMAL
xs:long long、java.lang.Long INTEGER
xs:negativeInteger java.math.BigInteger DECIMAL
xs:nonNegativeInteger java.math.BigInteger DECIMAL
xs:nonPositiveInteger java.math.BigInteger DECIMAL
xs:normalizedString java.lang.String CHARACTER
xs:positiveInteger java.math.BigInteger DECIMAL
xs:short short、java.lang.Short INTEGER
xs:string java.lang.String CHARACTER
xs:time javax.xml.datatype.XMLGregorianCalendar TIME
xs:unsignedByte Short INTEGER
xs:unsignedInt Long INTEGER
xs:unsignedLong java.math.BigInteger DECIMAL
xs:unsignedShort Int INTEGER
xs:yearMonthDuration javax.xml.datatype.Duration INTERVAL

カスタム Java 変換を作成して、配列または複合タイプの入力と出力を処理することもできます。これらは、前述の表で示した、スキーマ・タイプから定義された Java タイプへの変換を行うことはできません。

この場合、Java クラスは MbElement クラスを使用して入力エレメントまたは出力エレメントを参照する必要があります。Java および MbElement クラスの使用について詳しくは、カスタム Java マッピング変換に対する Java API クラスの使用を参照してください。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:49:37


参照トピック参照トピック | バージョン 8.0.0.5 | cm28645_