ポリモアフィック・マッピングを使用すると、単一のソース・ビジネス・オブジェクトを多くの潜在的な宛先ビジネス・オブジェクトの 1 つにマップできます。 この形式のマッピングを行うには、次の操作が必要です。
例: 下に示すのは、メイン・ポリモアフィック・マップの宛先ビジネス・オブジェクトの 1 つにある最初の属性から取ったサンプル・コードです。この例で、ObjInput はソース・ビジネス・オブジェクトのインスタンス変数です。ObjOutput1 はこのコードが入った出力オブジェクトのインスタンス変数です。InputToOutput1 は ObjInput から ObjOutput1 へ実際のマッピングを行うサブマップです。この場合、マッピングの実行を指定する条件は、ソース・ビジネス・オブジェクト内の Attr1 属性の値に基づいています。当然ながら、ユーザーの実際の条件は異なります。
BusObj[] rSrcBO = new BusObj[1]; BusObj[] rDstBO = new BusObj[1]; rSrcBO[0] = ObjInput; String Attr1Val = ObjInput.getString("Attr1"); if (Attr1Val.equals("Poly1")) { try { rDstBO = DtpMapService.runMap("InputToOutput1", DtpMapService.CWMAPTYPE,rSrcBO,cwExecCtx); ObjOutput1.setContent(rDstBO[0]); } catch (MapFailureException e) { e.toString(); e.printStackTrace(); raiseException(e); } catch (MapNotFoundException e) { raiseException("MapNotFoundException", "runMap did not find map"); } catch (Exception e) { e.printStackTrace(); } }