Thanks for the information. Let me try to reproduce this.
On Feb 15, 2013, at 11:32 AM, Dzmitry Kazimirchyk <[email protected]>
wrote:
> From what I was able to find now it seems like it is related to CAY-1729. I'm
> not sure how it used to work before but now for us the problem is that we
> have id property declared in super entity and inherited by sub entities. Now
> this property is present in every sub entity descriptor's declaredProperties
> list which itself looks like it is meant to accumulate only NEW UNIQUE
> properties declared in sub entities and not present in parent. This in turn
> leads to id column descriptor type of super entity always being reset to VOID
> by following code inside SelectTranslator and therefore field always
> containing null value.
>
> private void appendColumn(.......... {
> if (skipSet.add(new ColumnTracker(alias, attribute))) {
> ..... add new column descriptor.......
> }
> else if (objAttribute != null) {
> .............
> for (ColumnDescriptor column : columns) {
> if (attribute.getName().equals(column.getName())) {
> ........
> if (original != null) {
> if (attributeOverrides == null) {
> attributeOverrides = new HashMap<ObjAttribute,
> ColumnDescriptor>();
> }
>
> attributeOverrides.put(original, column);
> column.setJavaClass(Void.TYPE.getName());
> }
> ..............
> }
> }
> }
> }
>
> ELSE part is executed if the attribute is already present: the case we get
> with id props coming again from sub entities.
>
> Not sure if my rough investigation is helpful in some way but probably might
> be a place to start with.
>
> Dima
>
> On 02/15/2013 01:29 PM, Andrus Adamchik wrote:
>> Dima, do you have the details of the problem to post on this list?
>
>