Try this.

<resultMap id="policySrcResult" class="Policy">
    <result column="POLICY_NUMBER" property="policyNumber" jdbcType="VARCHAR" />
    <result column="POL_TYPE" property="polType" jdbcType="VARCHAR" />
    <result column="BUSINESS_ENTITY" property="busEntity" jdbcType="VARCHAR" /> 
    <result column="YRS_IN_BUS" property="yrsInBus" jdbcType="VARCHAR" />
    <result property="policyDetail.BUSINESS_ENTITY" column="BUSINESS_ENTITY"/>     
    <result property="policyDetail.YRS_IN_BUS" column="YRS_IN_BUS"/>     
</resultMap>


Christian


From: Angel Braasch [mailto:[EMAIL PROTECTED]
Sent: Friday, 15 September 2006 13:41
To: [email protected]
Subject: RE: Remap resultMap

I've been using IBATIS only for a short time....so I apologize if this a newbie question.  Can anyone help me with this posting?
 
Angel


From: Angel Braasch [mailto:[EMAIL PROTECTED]
Sent: Wednesday, September 13, 2006 12:33 PM
To: [email protected]
Subject: Remap resultMap

I have a policy object that is getting mapped in a resultMap.  In that resultMap I have to run another query to get additional properties.   This is a 1:1 situation.  I want to remap those additional properties(from policyDetailResults) back to the original resultMap(policySrcResult). 
 
I have tried to point "getPolicyDetail" to resultMap="policySrcResult" remapResults="true".  But then I got an Invalid column name on my policyNumber field.
 
I'm at a loss on how to do this.   Below are code snippets. 
 
Any assistance would be greatly appreciated.
 
Thanks,
 
Angel 
 

public class Policy{
private Policy policyDetail = null;
private String busEntity;
private String yrsInBus;
private String policyNumber = null;
private String polType = null;

getters/setters.....

}

<resultMap id="policySrcResult" class="Policy">
    <result column="POLICY_NUMBER" property="policyNumber" jdbcType="VARCHAR" />
    <result column="POL_TYPE" property="polType" jdbcType="VARCHAR" />
    <result column="BUSINESS_ENTITY" property="busEntity" jdbcType="VARCHAR" /> 
    <result column="YRS_IN_BUS" property="yrsInBus" jdbcType="VARCHAR" />
    <result property="policyDetail" column="{polType=POL_TYPE,policyNumber=POLICY_NUMBER}" select="getPolicyDetail"/>     
</resultMap>

 

<resultMap id="policyDetailResults" class="Policy"> 
   <result column="BUSINESS_ENTITY" property="busEntity" jdbcType="VARCHAR" />
   <result column="YRS_IN_BUS" property="yrsInBus" jdbcType="VARCHAR" />
</resultMap>

 

<select id="getPolicyDetail" parameterClass="Policy" resultMap="policyDetailResults">  
   SELECT BUSINESS_ENTITY, YRS_IN_BUS
   FROM
   <dynamic>
     <isEqual property="polType" compareValue="N"> CPP_DETAIL </isEqual>
     <isEqual property="polType" compareValue="U"> UMB_DETAIL </isEqual>
     <isEqual property="polType" compareValue="Q"> UMB_FARM_DETAIL </isEqual>
     <isEqual property="polType" compareValue="X"> CA_DETAIL </isEqual>
     <isEqual property="polType" compareValue="B"> BOPS_DETAIL </isEqual>
     <isEqual property="polType" compareValue="F"> CPP_FARM_DETAIL </isEqual>     
   </dynamic>
   WHERE POLICY_NUMBER=#policyNumber#
</select>

Reply via email to