On Thu, Feb 28, 2008 at 9:27 AM, nitros <[EMAIL PROTECTED]> wrote:

>
> Looks like this is a bug in openJPA.  I will go ahead and create a bug
> request for openJPA


Wait a second.  I'm not so sure it's a bug with OpenJPA.  If you look at the
complete callstack, the caused by indicates a potential problem with jboss:

Caused by: java.io.IOException: Invalid use of destroyed classloader, UCL
destroyed at:
    at org.jboss.mx.loading.RepositoryClassLoader.findResources(
RepositoryClassLoader.java:595)
    at java.lang.ClassLoader.getResources(ClassLoader.java:1015)
    at org.apache.openjpa.lib.util.J2DoPrivHelper$14.run(J2DoPrivHelper.java
:395)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.apache.openjpa.lib.meta.ResourceMetaDataIterator.<init>(
ResourceMetaDataIterator.java:69)
    at
org.apache.openjpa.meta.AbstractCFMetaDataFactory.parsePersistentTypeNames(
AbstractCFMetaDataFactory.java:749)
    at
org.apache.openjpa.meta.AbstractCFMetaDataFactory.getPersistentTypeNames(
AbstractCFMetaDataFactory.java:606)
    ... 107 more

It kind of looks like jboss is passing in an invalid (destroyed) classloader
when attempting to initialize the container-managed entity manager factory.
Both WebSphere and WebLogic have done extensive testing with integrating
OpenJPA with their respective container-manged environments.  So, I would
question the plugin capabilities of jboss.

A couple of other observations with your persistence.xml (probably not
related to this problem, but still observations):

Your datasource configuration looks suspect:
<jta-data-source>java:/EswaadAppDS</jta-data-source>

The JPA spec requires a global jndi name, which would require a name along
the lines of "jdbc/EswaadAppDS".  I know that WebSphere allows the use of a
component-level name, but that would be along the lines of
"java:comp/env/jdbc/EswaadAppDS".  Not sure what namespace you are going
after with just "java:/EswaadAppDS".   Maybe it's something unique with
jboss that I am not familiar with.

The following property (<property name="openjpa.MetaDataFactory"
value="jpa"/>) is not buying you anything since you're not providing any new
settings for the default "jpa" MetaDataFactory.

The use of the generic support setting for subselect looks dangerous
(<property name="openjpa.jdbc.DBDictionary"
value="SupportsSubselect=true"/>).  This says that any database I run to
supports subselects.  Depending on the database you are attempting to use,
you may be accidentally using a feature that is not fully supported for that
database.

Kevin


> --
> View this message in context:
> http://www.nabble.com/Help-needed-with-JBoss-and-openJPA-tp15603051p15738866.html
> Sent from the OpenJPA Users mailing list archive at Nabble.com.
>
>

Reply via email to