TOMEE-1580 correct computing of jarFilesUrl
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/57cb87f6 Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/57cb87f6 Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/57cb87f6 Branch: refs/heads/release-tomee-1.7.2 Commit: 57cb87f6fe45fb0f7fc43f557271da4ffee1cacf Parents: 39fe3a0 Author: Romain Manni-Bucau <[email protected]> Authored: Sun May 17 23:05:59 2015 +0200 Committer: Jonathan Gallimore <[email protected]> Committed: Sun May 17 22:36:53 2015 +0100 ---------------------------------------------------------------------- .../openejb/persistence/PersistenceUnitInfoImpl.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tomee/blob/57cb87f6/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java ---------------------------------------------------------------------- diff --git a/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java b/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java index 5883af4..c849ad6 100644 --- a/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java +++ b/container/openejb-core/src/main/java/org/apache/openejb/persistence/PersistenceUnitInfoImpl.java @@ -250,11 +250,17 @@ public class PersistenceUnitInfoImpl implements PersistenceUnitInfo { this.persistenceUnitRootUrl = toUrl(root); try { + if (!jarFiles.isEmpty()) { + final File tmpRoot; + if (root.getName().endsWith(".jar")) { + tmpRoot = root.getParentFile(); // lib for a war, / of the ear otherwise, no sense in other cases + } else { + tmpRoot = root; + } - for (final String path : jarFiles) { - File file = new File(root, path); - file = file.getCanonicalFile(); - jarFileUrls.add(toUrl(file)); + for (final String path : jarFiles) { + jarFileUrls.add(toUrl(new File(tmpRoot, path).getCanonicalFile())); + } } } catch (final IOException e) { throw new IllegalStateException(e);
