Maksimenko Alexander wrote:

Hi!
I have some issues with inheritance
I have the following object hierachy:
interface ABC
interface AB extends ABC
class A extends AB

so the only concrete class is A
However in class org.apache.ojb.broker.metadata.ObjectReferenceDescriptor in method getForeignKeyFieldDescriptors(ClassDescriptor mif) we have the following snippet :


Vector extents = mif.getExtentClasses();
Class firstConcreteClass = (Class) extents.get(0);
mif = getClassDescriptor().getRepository().getDescriptorFor(firstConcreteClass);


So it's supposed that all extents of interface are concrete classes. In my case it's not true so I have the following exception :

org.apache.ojb.broker.OJBRuntimeException: Incorrect or not found field reference name 'parentId' in descriptor [EMAIL PROTECTED],cascade_store=object,cascade_delete=object,is_lazy=true,class_of_Items=interface net.redpelican.datamodel.category.Category] for class-descriptor 'net.redpelican.datamodel.category.folder.FolderCategory'
at org.apache.ojb.broker.metadata.ObjectReferenceDescriptor.getForeignKeyFieldDescriptors(ObjectReferenceDescriptor.java:131)


at org.apache.ojb.broker.core.QueryReferenceBroker.getFKQuery1toN(QueryReferenceBroker.java:697)

at org.apache.ojb.broker.core.QueryReferenceBroker.getFKQuery(QueryReferenceBroker.java:630)

at org.apache.ojb.broker.core.QueryReferenceBroker.retrieveCollection(QueryReferenceBroker.java:561)

at org.apache.ojb.broker.core.QueryReferenceBroker.retrieveCollections(QueryReferenceBroker.java:748)

at org.apache.ojb.broker.accesslayer.RsIterator.getObjectFromResultSet(RsIterator.java:473)

at org.apache.ojb.broker.accesslayer.RsIterator.next(RsIterator.java:265)
at org.apache.ojb.broker.accesslayer.ChainingIterator.next(ChainingIterator.java:322)


at org.apache.ojb.broker.core.PersistenceBrokerImpl.getObjectByQuery(PersistenceBrokerImpl.java:1462)


Please post your repository.xml file.

Tom


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to