Hi,
    I am using ojb1.0_rc4, ODMG api with OJB queries and mysql4. I will describe my 
problem with an example for you to better understand it. 
1) I have a class called ClassA, another class called ClassB and another class called 
ClassC. 
2) ClassA has a collection of ClassB objects which has a reference to a ClassC object. 
So, ClassA is 1:N associated with ClassB. ClassB is N:1 associated with ClassC. 
3) ClassB has a field called _startTime. ClassC has also a field called _startTime. 
So, both classes have a field with the same name.
4) I use the following collection-descriptor for ClassA in my repository_user.xml file:
   <class-descriptor
      class="ClassA"
      table="class_a">
        .....
      <collection-descriptor
         name="_classBObjects"
         element-class-ref="ClassB"
         orderby="_classCObject._startTime"
         sort="ASC"
      >
           <inverse-foreignkey field-id-ref="2"/>
      </collection-descriptor>
        ....
    </class-descriptor>
5) The problem is that when I load a ClassA object, the _classBObjects list is 
populated with ClassB objects which have wrong values for the _startTime field. The 
values in ClassB._startTime objects are actually values from classC._startTime 
objects. This is wrong!
6) After some investigation I found out that this happens because of the orderby 
attribute in collection-descriptor. When I change the orderby element from 
orderby="_classCObject._startTime" to orderby="_id" the problem disappears.

    I believe this is a bug in OJB. Please, does anyone know how to solve this problem?
    
    Thanks for your help.

Sincerely,
    Jair Jr

Reply via email to