Dain-
I assume you are specifying the ClassLoader by using your own
subclass of PersistenceUnitInfoImpl. OpenJPA should be using your
ClassLoader, although if the same class name is available in both
your classloader as well as the system classloader, then I think the
results are undefined.
Is it possible to check to see if your ClassLoader is used if the
class to be loaded is *not* available in the system classloader?
On Dec 27, 2006, at 8:38 PM, Dain Sundstrom wrote:
Also it appears that the Broker be loading classes from the thread
context class loader when persist is called.
-dain
On Dec 27, 2006, at 5:34 PM, Dain Sundstrom wrote:
I've been working on a getting JPA runtime enhancement and have
run into a problem where OpenJPA is loading my classes from the
wrong class loader. When I create a persistence unit info it
supplies a specific class loader for OpenJPA to use when resolving
application classes. When I execute a query the
JPQLExpressionBuilder simply uses getClass().getClassLoader() to
load classes. In my case this is the system class loader which
contains unenhanced classes and not the class loader for the
persistence unit which has properly enhanced classes.
It is my understand that OpenJPA should use the class loader
obtained from the PersistenceUnitInfo for all class loading. Is
this correct?
If that is correct, is this a bug in OpenJPA?
-dain