geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Jencks (JIRA)" <j...@apache.org>
Subject [jira] Commented: (GERONIMO-4468) <jar-file> elements are interpreted relatively to EAR root
Date Fri, 16 Jan 2009 18:28:59 GMT

    [ https://issues.apache.org/jira/browse/GERONIMO-4468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12664600#action_12664600
] 

David Jencks commented on GERONIMO-4468:
----------------------------------------

I would trust the code more than the documentation :-)

The <jar-file> element doesn't change the contents of any runtime classloaders, so if
a class is only visible by being in a jar in a jar-file element then it won't be available
at run time.  I thought that we copied the run time classloader to obtain the temporary classloader.
 Any class in a parent classloader will presumably have been already loaded so it would have
needed to be pre-enhanced since  the runtime enhancement cant know to deal with it.  So only
stuff in the current classloader can possibly be subject to runtime enhancement.  So, I'm
stll pretty sure that passing the list of classes _or_ passing the list of jars but not both
is the correct behavior.

> <jar-file> elements are interpreted relatively to EAR root
> ----------------------------------------------------------
>
>                 Key: GERONIMO-4468
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4468
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>    Affects Versions: 2.1.3
>            Reporter: Janko Heilgeist
>            Assignee: Ivan
>         Attachments: Geronimo-4468-01.patch, Geronimo-4468.patch, geronimo-jarfile.tar.gz,
my-ear-1.0-SNAPSHOT.ear
>
>
> The <jar-file> elements in a persistence.xml are wrongly interpreted as relative
to the EAR's root.
> EJB 3.0 persistence spec, section 6.2:
> {quote}
> [...] A persistence unit is defined by a persistence.xml file. The jar file or directory
whose META-INF directory contains the persistence.xml file is termed the root of the persistence
unit. [...]
> {quote}
> EJB 3.0 persistence spec, section 6.2:
> {quote}
> One or more JAR files may be specified using the jar-file elements [...] Such JAR files
are specified relative to the root of the persistence unit [...].
> {quote}
> The attached EAR is correctly verified by the Glassfish verifier. Deploying it on Geronimo
2.1.3 or 2.2-SNAPSHOT results in a successful deployment, while on the console OpenJPA throws
exceptions because it tries to resolve the jar-file paths relative to the EAR's root:
> {quote}
> <openjpa-1.0.3-r420667:677674 nonfatal general error> org.apache.openjpa.persistence.PersistenceException:
$HOME/geronimo-tomcat6-javaee5-2.1.3/repository/com/heilgeist/testcase/geronimo/jarfile/my-ear/1.0-SNAPSHOT/my-ear-1.0-SNAPSHOT.ear/my-entities1-1.0-SNAPSHOT.jar
(No such file or directory)
> <openjpa-1.2.0-r422266:683325 nonfatal general error> org.apache.openjpa.persistence.PersistenceException:
$HOME/geronimo-tomcat6-javaee5-2.2-SNAPSHOT/repository/com/heilgeist/testcase/geronimo/jarfile/my-ear/1.0-SNAPSHOT/my-entities2-1.0-SNAPSHOT.jar
(No such file or directory)
> {quote}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message