I don't think that is the problem (unless I am just not understanding something). Let me give a better example.

Suppose I have this.

<resultMap class="com.ffblitz.ff.data.dc.FflRosterPlayer" id="getFflRosterPlayerResult">
<result property="week" column="ftr.week"/>
<result property="rosterStatusCode" column="ftr.roster_status_cd"/>
<result property="injuryStatusCode" column="ir.injury_cd"/>
<result property="injuryStatusDescription" column="nis.description"/>
<result property="injuryStatusDetail" column="ir.injury_detail"/>
<!-- From FFlLeague table -->
<result property="rosterLockBuffer" column="fl.roster_auto_lock_buffer"/>
<!-- NflPlayer Object -->
<result property="nflPlayer.playerId" column="np.nfl_player_id"/>
<result property="nflPlayer.lastName" column="np.last_name"/>
<result property="nflPlayer.firstName" column="np.first_name"/>
<result property="nflPlayer.jerseyName" column="np.jersey_name"/>
<result property="nflPlayer.positionCode" column="np.position_cd"/>
<result property="nflPlayer.playerType" column="np.player_type"/>
<result property="nflPlayer.nflTeam.teamCode" column="nt.nfl_team_cd"/>
<result property="nflPlayer.nflTeam.name" column="nt.name"/>
<result property="nflPlayer.nflTeam.conference" column="nt.conference"/>
<result property="nflPlayer.nflTeam.division" column="nt.division"/>
<result property="nflPlayer.nflTeam.smallImageUrl" column="nt.image_sm_url"/>
<result property="nflPlayer.nflTeam.largeImageUrl" column="nt.image_lg_url"/>
<result property="nflPlayer.nflTeam.byeWeek" column="nt.bye_week"/>
<!-- FflTeam Object -->
<result property="fflTeam.fflTeamId" column="ft.ffl_team_id"/>
<result property="fflTeam.leagueId" column="ft.league_id"/>
<result property="fflTeam.teamName" column="ft.name"/>
<result property="fflTeam.slogan" column="ft.slogan"/>
<result property="fflTeam.imageUrl" column="ft.image_url"/>
<result property="fflTeam.fflUser.userId" column="fu.ffl_user_id"/>
<result property="fflTeam.fflUser.lastName" column="fu.last_name"/>
<result property="fflTeam.fflUser.firstName" column="fu.first_name"/>
<result property="fflTeam.fflUser.screenName" column="fu.screen_name"/>
<result property="fflTeam.fflUser.emailAddress" column="fu.email_address"/>
<result property="fflTeam.fflUser.phoneNumber" column="fu.phone_num"/>
<result property="fflTeam.fflUser.loginName" column="fu.login_name"/>
<result property="fflTeam.fflUser.password" column="fu.login_password"/>
<result property="fflTeam.fflUser.passwordQuestion" column="fu.password_question"/>
<result property="fflTeam.fflUser.passwordAnswer" column="fu.password_answer"/>
<result property="fflTeam.fflUser.emailVerified" column="fu.email_verified"/>
<result property="fflTeam.fflUser.emailAlertsEnabled" column="fu.send_email_notify"/>
<result property="fflTeam.fflUser.userRole" column="fu.role"/>
<result property="fflTeam.fflUser.leagueListEnabled" column="fu.show_league_list"/>
</resultMap>

NflPlayer and FflTeam are straight cut and paste from their respective resultmaps. I would hope that I could do something like this:
<resultMap class="com.ffblitz.ff.data.dc.FflRosterPlayer" id="getFflRosterPlayerResult">
<result property="week" column="ftr.week"/>
<result property="rosterStatusCode" column="ftr.roster_status_cd"/>
<result property="injuryStatusCode" column="ir.injury_cd"/>
<result property="injuryStatusDescription" column="nis.description"/>
<result property="injuryStatusDetail" column="ir.injury_detail"/>
<!-- From FFlLeague table -->
<result property="rosterLockBuffer" column="fl.roster_auto_lock_buffer"/>
<!-- NflPlayer Object -->
<result resultMap="NflPlayerResultMap"/> ********* change here
<!-- FflTeam Object -->
<result resultMap="FflTeamResultMap"/>
</resultMap>

Without this capability I am required to cut and paste object reference resultmaps all over the place. It becomes particularly bad when you want to add a column to or modify one of the properties in the result map that you have cut and pasted everywhere. I think you can see as well how single inheritance doesn't really help in this case. Any suggestions are much appreciated. Thanks.




Michael A. Harris
Manager, Software Development
[EMAIL PROTECTED]
Phone: (614) 564-3138
Cell: (614) 397-0445
Pager: [EMAIL PROTECTED]

CheckFree. The Company that Powers Payment on the Web
SM.
http://www.checkfree.com/paybillsonline

Inactive hide details for Ron Grabowski <[EMAIL PROTECTED]>Ron Grabowski <[EMAIL PROTECTED]>


          Ron Grabowski <[EMAIL PROTECTED]>

          08/03/2005 10:05 AM

          Please respond to
          [email protected]

To

[email protected]

cc


Subject

Re: Embedding ResultMaps

It should be possible to reference a resultMap in another file if you
use the complete namespace. Have you tried that?

--- [EMAIL PROTECTED] wrote:

>
> Is there a way to embed result maps within parent result maps? The
> reason I
> ask is that I have found that for large projects, SqlMaps can be
> problematic to maintain when you have multiple classes that maintain
> references to the same object or objects. For example suppose that I
> have a
> user class and an address class. Now both class a and class b have
> references to user and address and therefore have copies of the user
> and
> address resultmaps included in their own result map. This is
> problematic
> when you need to change a property in the base result map for either
> user
> or address because you now have to find all other resultmaps(objects)
> that
> maintain a reference to these objects and update those result maps as
> well.
> I realize that you can extend a result map but that seems overly
> limiting
> if you can only extend one resultmap at a time. Is there instead a
> way to
> embed references to other resultmaps within a given resultmap? I
> cannot
> believe that I am the only one who has run into this issue/concern,
> so
> either I am missing something or it seems to be a limitation of the
> product. Any feedback or best practices suggestion would be
> appreciated.
> Thanks.
>
>
> Michael A. Harris
>
>
> Michael A. Harris
> Manager, Software Development
> [EMAIL PROTECTED]
> Phone: (614) 564-3138
> Cell: (614) 397-0445
> Pager: [EMAIL PROTECTED]
>
> CheckFree. The Company that Powers Payment on the WebSM.
>
http://www.checkfree.com/paybillsonline


GIF image

Reply via email to