Thanks Chuck to clarify about this problem. 
I know now what to do when we got this kind of issue.

Ray

Envoyé de mon iPad

Le 8 avr. 2013 à 17:33, Chuck Hill <[email protected]> a écrit :

> 
> On 2013-04-08, at 12:45 AM, Raymond NANEON wrote:
> 
>> Hi List,
>> 
>> I deleted many-2-many relationship created by reverse engineering, deleted 
>> joined table and recreate relationship and joined table has been created 
>> automatically and it works fine.
>> 
>> My question is why the relationship one-2-many create by everse engineering 
>> works fine and the relationship many-2-many don't work?
> 
> Likely your database design is different from what EOF normally uses and it 
> got confused when reverse engineering.  Or the reverse engineering code has a 
> bug.  That code does not get used every day, so bugs are a possibility.
> 
> Chuck
> 
> 
>> 
>> Thanks a lot for all
>> Envoyé depuis iCloud
>> 
>> Le 05 avr 2013 à 20:31, Ray Kiddy <[email protected]> a écrit :
>> 
>>> 
>>> On Apr 5, 2013, at 9:04 AM, Raymond NANEON wrote:
>>> 
>>>> Hi Markus,
>>>> 
>>>> Thanks for your advices. i going to try it
>>>> Ray
>>>> 
>>>> Envoyé de mon iPad
>>> 
>>> Whenever I bump into this, and annoyingly, it still does happen once in a 
>>> while, the thing to fix is either:
>>> 
>>> - one of the 4 underlying relationships are marked as a class property, or
>>> 
>>> - one of the underlying relationships into the join table does not have 
>>> 'owns destination' and 'propagate primary key' set.
>>> 
>>> Either of these can cause it. I do not let eclipse create many-to-many 
>>> relationships for me anymore. I just do it myself. Maybe I have had enough 
>>> practice and screwed it up enough times that I now know what to avoid.
>>> 
>>> - ray
>>> 
>>>> Le 5 avr. 2013 à 17:43, Markus Ruggiero <[email protected]> a 
>>>> écrit :
>>>> 
>>>>> As others already pointed out your many-2-many looks strange.
>>>>> 
>>>>> Delete your all relationships from and to your join entity 
>>>>> EORepartDomMatiere. Then delete this entity as well.
>>>>> Click once on entity EOMatiere and "create new Relationship". Select in 
>>>>> the upcoming dialog on the right side the destination entity EODomaine. 
>>>>> Underneath both entities check "to-many". The dialog changes and proposes 
>>>>> to create a join entity as well a flattened relationship. Accept things 
>>>>> as they are and your model is ok. Do not change anything in the model 
>>>>> (visibility of the generated relationships, also do not assign a specific 
>>>>> class to the join entity, leave it as EOGenericRecord).
>>>>> 
>>>>> In your code do something like
>>>>> 
>>>>> EOMatiere myMatiere = ...
>>>>> EODomaine myDomaine = ...
>>>>> myMatiere.addObjectToBothSidesOfRelationshipWithKey (myDomaine, 
>>>>> EOMatiere.DOMAINES_KEY);
>>>>> 
>>>>> Let EOF take care of creating the join table record - it works, I can 
>>>>> assure you!
>>>>> 
>>>>> Have fun,
>>>>> ---markus---
>>>>> 
>>>>> On 05.04.2013, at 15:55, Raymond NANEON <[email protected]> wrote:
>>>>> 
>>>>>> Hi List,
>>>>>> 
>>>>>> I have a table "EORepartDomMatiere" which has like pk foreign key of 2 
>>>>>> others tables (EODomaine & EOMatiere). 
>>>>>> <mat1.jpg>
>>>>>> <reparMat1.jpg>
>>>>>> <dom1.jpg>
>>>>>> <reparDom1.jpg>
>>>>>> So when I want to save in the many-to-many table whith ec.saveChanges();
>>>>>> 
>>>>>> ...
>>>>>> repart.setMatiereRelationship(mat);
>>>>>>        repart.setDomaineRelationship(dom);
>>>>>>        if (ec.hasChanges())
>>>>>>            ec.saveChanges();
>>>>>> ...
>>>>>> 
>>>>>> I got this Exception : java.lang.IllegalStateException: Adaptor 
>>>>>> er.extensions.jdbc.ERXJDBCAdaptor@3e2ad6a0 failed to provide new primary 
>>>>>> keys for entity 'EORepartDomMatiere'
>>>>>> at 
>>>>>> com.webobjects.eoaccess.EODatabaseContext.prepareForSaveWithCoordinator(EODatabaseContext.java:5713)
>>>>>>    at 
>>>>>> com.webobjects.eocontrol.EOObjectStoreCoordinator.saveChangesInEditingContext(EOObjectStoreCoordinator.java:370)
>>>>>>    at 
>>>>>> com.webobjects.eocontrol.EOEditingContext.saveChanges(EOEditingContext.java:3192)
>>>>>>    at er.extensions.eof.ERXEC._saveChanges(ERXEC.java:1176)
>>>>>>    at er.extensions.eof.ERXEC.saveChanges(ERXEC.java:1099)
>>>>>>    at 
>>>>>> org.utt.rfcct.serveur.components.assistants.modules.ModuleAdminDomaine.rePartDomMat(ModuleAdminDomaine.java:349)
>>>>>>    at 
>>>>>> org.utt.rfcct.serveur.components.assistants.modules.ModuleAdminDomaine.uneMatiereEnregistrer(ModuleAdminDomaine.java:314)
>>>>>> 
>>>>>> Why the adaptor want to create a new primary key? What's wrong?
>>>>>> 
>>>>>> Thanks for your help
>>>>>> Envoyé depuis iCloud
>>>>>> _______________________________________________
>>>>>> Do not post admin requests to the list. They will be ignored.
>>>>>> Webobjects-dev mailing list      ([email protected])
>>>>>> Help/Unsubscribe/Update your Subscription:
>>>>>> https://lists.apple.com/mailman/options/webobjects-dev/mailinglists%40kataputt.com
>>>>>> 
>>>>>> This email sent to [email protected]
>>>>> 
>>>>> 
>>>>> 
>>>>> Markus Ruggiero
>>>>> [email protected]
>>>>> 
>>>>> Check out the new book about Project Wonder and WebObjects on 
>>>>> http://www.kataputt.com/
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>> _______________________________________________
>>>> Do not post admin requests to the list. They will be ignored.
>>>> Webobjects-dev mailing list      ([email protected])
>>>> Help/Unsubscribe/Update your Subscription:
>>>> https://lists.apple.com/mailman/options/webobjects-dev/ray%40ganymede.org
>>>> 
>>>> This email sent to [email protected]
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> https://lists.apple.com/mailman/options/webobjects-dev/rnaneon%40me.com
>>> 
>>> This email sent to [email protected]
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      ([email protected])
>> Help/Unsubscribe/Update your Subscription:
>> https://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net
>> 
>> This email sent to [email protected]
> 
> -- 
> Chuck Hill             
> Executive Managing Partner, VP Development and Technical Services
> 
> Practical WebObjects - for developers who want to increase their overall 
> knowledge of WebObjects or who are trying to solve specific problems.    
> http://www.global-village.net/gvc/practical_webobjects
> 
> Global Village Consulting ranks 13th in 2012 in BIV's Top 100 Fastest Growing 
> Companies in B.C! 
> Global Village Consulting ranks 76th in 24th annual PROFIT 200 ranking of 
> Canada’s Fastest-Growing Companies by PROFIT Magazine!
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to