290.13. IDoc の XML シリアル化
概要
IDoc メッセージ本文は、組み込み型コンバーターを使用して、XML 文字列形式にシリアル化できます。
XML 名前空間
シリアル化された各 IDoc は、次の一般的な形式を持つ XML 名前空間に関連付けられています。
http://sap.fusesource.org/idoc/repositoryName/idocType/idocTypeExtension/systemRelease/applicationRelease
http://sap.fusesource.org/idoc/repositoryName/idocType/idocTypeExtension/systemRelease/applicationReleaserepositoryName (リモート SAP メタデータリポジトリーの名前) と idocType (IDoc ドキュメントタイプ) の両方が必須ですが、名前空間の他のコンポーネントは空白のままにすることができます。たとえば、次のような XML 名前空間を持つことができます。
http://sap.fusesource.org/idoc/MY_REPO/FLCUSTOMER_CREATEFROMDATA01///
http://sap.fusesource.org/idoc/MY_REPO/FLCUSTOMER_CREATEFROMDATA01///組み込み型コンバーター
					Camel SAP コンポーネントには組み込み型コンバーターがあり、Document オブジェクトまたは DocumentList オブジェクトを String 型に変換したり、String 型から変換したりできます。
				
					たとえば、Document オブジェクトを XML 文字列にシリアル化するには、次の行を XML DSL のルートに追加するだけです。
				
<convertBodyTo type="java.lang.String"/>
<convertBodyTo type="java.lang.String"/>
					このアプローチを使用して、シリアライズされた XML メッセージを Document オブジェクトにすることもできます。たとえば、現在のメッセージ本文がシリアル化された XML 文字列である場合、XML DSL のルートに次の行を追加することで、それを Document オブジェクトに戻すことができます。
				
<convertBodyTo type="org.fusesource.camel.component.sap.model.idoc.Document"/>
<convertBodyTo type="org.fusesource.camel.component.sap.model.idoc.Document"/>XML 形式のサンプル IDoc メッセージ本文
					IDoc メッセージを String に変換すると、ルート要素が idoc:Document (単一のドキュメントの場合) または idoc:DocumentList (ドキュメントのリストの場合) のいずれかである XML ドキュメントにシリアライズされます。例290.2「XML の IDoc メッセージボディー」 は、idoc:Document 要素にシリアル化された単一の IDoc ドキュメントを示しています。
				
例290.2 XML の IDoc メッセージボディー