[
https://issues.apache.org/jira/browse/OPENJPA-2094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on OPENJPA-2094 started by Jody Grassel.
> Metadata processing needs to support jar:file URLs that address Jar
> directories
> -------------------------------------------------------------------------------
>
> Key: OPENJPA-2094
> URL: https://issues.apache.org/jira/browse/OPENJPA-2094
> Project: OpenJPA
> Issue Type: Bug
> Components: lib
> Reporter: Jody Grassel
> Assignee: Jody Grassel
>
> The JPA specification makes the following assertion about
> PersistenceUnitInfo's PersistenceUnitRootUrl value:
> /**
> * Returns the URL for the jar file or directory that is the
> * root of the persistence unit. (If the persistence unit is
> * rooted in the WEB-INF/classes directory, this will be the
> * URL of that directory.)
> * The URL will either be a file: URL referring to a jar file
> * or referring to a directory that contains an exploded jar
> * file, or some other URL from which an InputStream in jar
> * format can be obtained.
> *
> * @return a URL referring to a jar file or directory.
> */
> public URL getPersistenceUnitRootUrl();
> Currently, OpenJPA supports the following URL patterns:
> 1) file: URL which addresses a jar file or an exploded jar file (directory)
> 2) jar: URL which addresses a jar file that terminates with "!/" (i.e.,
> jar:file:somepath/myjar!/)
> 3) Any URL that ends with ".jar"
> What it does not support is a jar URL of this pattern:
> jar:file:somepath/myjar!/WEB-INF/classes
> OpenJPA's AbstractCFMetaDataFactory.parsePersistentTypeNames() method will
> find that the
> URL doesn't match the three scenarios listed above, and defaults to
> attempting to parse it as an
> XML file, which is obviously not an appropriate behavior for processing a Jar
> file.
> The "jar:file:somepath/myjar!/WEB-INF/classes" pattern must be supported to
> accommodate
> J2EE application servers that pass such a URL into
> PersistenceUnitInfo._persistenceUnitRootUrl
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira