ネストされたデータ・オブジェクトを別のデータ・オブジェクトにコピーするとソース・オブジェクトの参照が破棄される

データ・オブジェクト Father には、別のデータ・オブジェクト Child が含まれています。Java スニペットの内側では、Child を含むオブジェクトがフェッチされ、データ・オブジェクト Mother の副構造で設定されます。 データ・オブジェクト Father での Child への参照は消失します。

理由

Child への参照は、Father から Mother に移されます。

解決方法

上記のようなデータ形式変更を Java スニペットで実行する場合は、別のオブジェクトに割り当てられる前にそのデータ・オブジェクトをコピーします。以下のコード・スニペットはその方法を示しています。
BOCopy copyService = (BOCopy)ServiceManager.INSTANCE.locateService
                      ("com/ibm/websphere/bo/BOCopy"); 
DataObject Child = Father.get("Child"); 
DataObject BCopy = copyService.copy(Child); 
Mother.set("Child", BCopy);

ご利用条件 |


(c) Copyright IBM Corporation 2005, 2006.
本製品では Eclipse テクノロジーが採用されています。(http://www.eclipse.org)