Hi Lasse,

Lambrecht, Lasse (Allianz Deutschland AG) wrote:
Hello everybody,

I'm trying to get some of the information stored in the repository
files (of my o/r mapping). So far I tried something like this to get
the "translation" from the Java name of an attribute to the DB2
column name - which works fine:

DescriptorRepository lRepository =
ojbBrokerRef.getDescriptorRepository(); try { ClassDescriptor lClass
= lRepository.getDescriptorFor(persistenteKlasse); FieldDescriptor
lField = lClass.getFieldDescriptorByName(feldname); lResult =
lField.getColumnName(); } catch (ClassNotPersistenceCapableException
e) { .... }

Now two questions: a) is there a way to do the opposite? I have a DB2
table/column name and want to get the Java name. Sure, I can iterate
through all ClassDescriptors, but that seems not the perfect solution
(my repository-XML is close to 1 MB).

Sorry, OJB doesn't provide such specific "reverse"-methods! If this happens more then a few times and performance is significant, I recommend to map table-name/ClassDescriptor once on startup of the application (if different repository profiles are used you have to take care of this too - http://db.apache.org/ojb/docu/guides/metadata.html#Object+metadata+profiles).


b) how can I find a field, if I
don't know, in which ClassDescriptor the field is located? I only
have a field name in some rare situations. The fieldname is unique.
The only way I see is to, again, iterate through all ClassDescriptors.

yep! Or again map this by your own on startup of the application.

I would recommend to write a simple test to check the time period for CLD-iteration and then decide which way to go.

regards,
Armin


Regards Lasse Lambrecht

_____


Allianz Deutschland AG Vorsitzender des Aufsichtsrats: Michael
Diekmann. Vorstand: Dr. Gerhard Rupprecht, Vorsitzender; Hansjörg
Cramer, Dr. Karl-Hermann Lowe, Dr. Christof Mascher, Thomas Pleines,
Dr. Ulrich Rumm, Ulrich Schumacher, Dr. Maximilian Zimmerer. Für
Umsatzsteuerzwecke: USt-ID-Nr.: DE 814 580 981 ;
Versicherungsbeiträge sind umsatzsteuerfrei. Sitz der Gesellschaft:
München Registergericht: München HRB 158878



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

Reply via email to