10.24. 古い設定モデルから新しい設定モデルへの移行
本項は、旧式の JBoss の非 XSD ベースの設定モデルを熟知している開発者を対象としています。
古いモデルはフリーフォーム XML を使用していましたが、このコンポーネントは
org.jboss.soa.esb.helpers.ConfigTree のインスタンスを介して設定を受信します。新しい設定モデルは XSD ベースです。ただし、基盤のコンポーネント設定パターンは、引き続き org.jboss.soa.esb.helpers.ConfigTree のインスタンスを介して実行されます。これは、現時点では XSD ベースの設定が ConfigTree スタイルの設定にマッピング/変換されることを意味します。
以前のモデルにカスタマイズした開発者は、以下の点を念頭に置いてください。
- 新しい設定モデルですべてのドキュメントを読み取ります。古い知識に基づいて新しい設定を推測できるとは限りません。
- 新しい設定でフリーフォームマークアップがサポートされる唯一の場所は <property> 要素/タイプにあります。このタイプは、<provider>、<bus>、および <listener> タイプ(およびサブタイプ)で許可されます。ただし、<property> ベースの空きフォームマークアップが ConfigTree 設定にマッピングされる唯一の場所は、<property> が <action> に存在する場所です。この場合、<property> コンテンツはターゲットの ConfigTree <action> にマッピングされます。ただし、<action> に空き形式の子コンテンツを持つ 1+ <property> 要素がある場合、このすべてのコンテンツはターゲットの ConfigTree <action> に連結されます。
- 新しい Listener/Action コンポーネントを開発する場合は、これらのコンポーネントに依存する ConfigTree ベースの設定が新しい XSD ベースの設定からマッピングできるようにする必要があります。たとえば、ConfigTree 設定モデルでは、リスナーノードの属性を使用してリスナーコンポーネントに設定を提供するか、リスナー設定内の子ノードに基づいて設定を提供するか(その日に気づいたかに応じて)決定することができます。<listener> コンポーネントのこのタイプのフリーフォーム設定は、XSD から ConfigTree へのマッピングではサポートされていません。つまり、上記の例の子コンテンツは、XSD 設定から ConfigTree スタイルの設定にマッピングされません。実際、XSD 設定は <property> にあり、その場合はマッピングコードによって無視される場合を除き、任意のコンテンツを受け入れません。