• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: modeling problem
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: modeling problem


  • Subject: Re: modeling problem
  • From: TW <email@hidden>
  • Date: Mon, 30 Mar 2009 13:58:17 -0700

Thanks Chuck:

On Mar 30, 2009, at 1:18 PM, Chuck Hill wrote:


On Mar 29, 2009, at 4:48 PM, TW wrote:

All:

I have a model of our ldap directory with InetOrgPerson the base "user" entity. I've made InetOrgPerson abstract with it's table inetOrgPerson. I have the framework project containing that model in the build path of another that I'm using as a "generic user" framework.

In that second framework I have another model with a "GenericUser" entity. That entity has "InetOrgPerson" as it's parent. I've added this second framework to my app build path.

- in Entity Modeler if I set the table for "GenericUser" to "inetOrgPerson" (the same as it's parent), my app fetches 2 identical GenericUser EO's for each 1 matching record in LDAP

That is because you have set up Single Table Inheritance BUT not added any restricting qualifier on either entity. Are you certain that InetOrgPerson is marked as abstract? Check it again...

InetOrgPerson is definitely checked "Abstract" in my OD model.

I didn't think I needed a restricting qualifier if the parent was abstract. I do get errors requiring a restricting qualifier if InetOrgPerson is _not_ abstract. My goal was to have an entity/class (where InetOrgPerson is super) in a "middle" framework that can be used to wrap a relationship between ldap user and database employee (each modeled in their own frameworks). So, the way I have it set up there's really no difference between InetOrgPerson and GenericUser except that GenericUser has the relationship to <database employee> and InetOrgPerson does not.

I'm trying to abstract everything so that I can pick and choose what gets used on a per app basis.

- if I change the table for "GenericUser to "GenericUser" it works as expected. However, there is no such "table" or object in my LDAP directory. And I'm concerned that with that setup attempts to write to the directory would fail.

It should be OK like that. That is Vertical Inheritance which may have its own issues.

Well, I'm willing to tackle those issues when I encounter them if this should work. Fetches are currently working if I leave it as is and I'm not currently using any WO apps to create GenericUser or InetOrgPerson EO's.


The first way seems that it should be the proper way to do it but I don't understand why I'm getting two EO's for each record. Can someone point me to what I'm being dumb about?

I am not sure that the first way is correct. What if you then add data to GenericUser? It sort of feels like InetOrgPerson ought to be relationship from GenericUser, not the parent.



Chuck
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: modeling problem
      • From: Chuck Hill <email@hidden>
References: 
 >modeling problem (From: TW <email@hidden>)
 >Re: modeling problem (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: JavaClient session timeout?
  • Next by Date: [ANN] JBND 0.92
  • Previous by thread: Re: modeling problem
  • Next by thread: Re: modeling problem
  • Index(es):
    • Date
    • Thread