persistence@glassfish.java.net

Re: Fixing issue #520

From: Tom Ware <tom.ware_at_oracle.com>
Date: Tue, 04 Apr 2006 10:39:39 -0400

Hi Marina,

  Thanks for checking in the changes. They look good. I have done my
check-in to the trunk. I suspect the trunk version of the file will be
the same as the branch version of the file (at least for the time being)

-Tom

Marina Vatkina wrote:

>Hi Tom,
>
>I did the merge, ran unit and QLook tests and checked in the changes
>to the branch for the sources and the trunk for the tests (there is no
>branch for the tests).
>
>Unfortunately, you didn't explain the kind of changes that I'd need
>to be merging with (validation exception calls), so I did that to the
>best of my understanding.
>
>I hadn't backported the changes into the trunk as I need to recreate
>that ws (after a wrong attempt at branch checkout).
>
>thanks,
>-marina
>
>Tom Ware wrote On 04/03/06 10:02,:
>
>
>>Hi Marina,
>>
>> The changes look good. This class will definitely require a merge.
>>
>>-Tom
>>
>>Marina Vatkina wrote:
>>
>>
>>
>>
>>>Tom,
>>>
>>>I'll fix the test. Did you look at the changes? Will they conflict with
>>>any changes that you will be checking in today?
>>>
>>>thanks,
>>>-marina
>>>
>>>Tom Ware wrote:
>>>
>>>
>>>
>>>
>>>
>>>>HI Marina,
>>>>
>>>>It looks like we need to change the name of one of the Entities in our
>>>>testing.
>>>>
>>>>oracle.toplink.essentials.testing.models.cmp3.xml.merge.incompletemappings.owning.Employee
>>>>
>>>>
>>>>and
>>>>
>>>>oracle.toplink.essentials.testing.models.cmp3.xml.merge.advanced.Employee
>>>>
>>>>Have the same name.
>>>>
>>>>-Tom
>>>>
>>>>Marina Vatkina wrote:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>>Tom, Guy,
>>>>>
>>>>>If I fix this issue (see below for the proposed fix and attached
>>>>>changes), I
>>>>>get an error running unit tests:
>>>>>
>>>>>toplink.essentials.exceptions.ValidationException
>>>>> [junit] Exception Description: Entity name must be unique in a
>>>>>persistence unit. Entity name [XMLMergeEmployee] is used for the
>>>>>entity classes
>>>>>[oracle.toplink.essentials.testing.models.cmp3.xml.merge.incompletemappings.owning.Employee]
>>>>>and
>>>>>[oracle.toplink.essentials.testing.models.cmp3.xml.merge.advanced.Employee].
>>>>>
>>>>> [junit] at
>>>>>oracle.toplink.essentials.exceptions.ValidationException.nonUniqueEntityName(ValidationException.java:510)
>>>>>
>>>>>
>>>>>
>>>>>The exception seems to be correct, but I'm afraid I missed something...
>>>>>
>>>>>Please help!
>>>>>
>>>>>----------------
>>>>>The proposed fix (other than validation message itself) is this:
>>>>>
>>>>>Index:
>>>>>src/java/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java
>>>>>
>>>>>===================================================================
>>>>>RCS file:
>>>>>/cvs/glassfish/entity-persistence/src/java/oracle/toplink/essentials/internal/ejb/cmp3/metadata/MetadataProcessor.java,v
>>>>>
>>>>>retrieving revision 1.12
>>>>>diff -r1.12 MetadataProcessor.java
>>>>>33a34
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>import oracle.toplink.essentials.descriptors.ClassDescriptor;
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>947a949,956
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> }
>>>>>>
>>>>>> // Verify that entity name is not a duplicate
>>>>>> ClassDescriptor d =
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>m_session.getProject().getDescriptorForAlias(alias);
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> if (d != null) {
>>>>>> throw ValidationException.nonUniqueEntityName(
>>>>>> d.getJavaClassName(),
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>md.getDescriptor().getJavaClassName(),
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> alias);
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>thanks,
>>>>>-marina
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>
>>