Author: hardy.ferentschik
Date: 2010-03-02 18:11:41 -0500 (Tue, 02 Mar 2010)
New Revision: 18918
Modified:
core/trunk/entitymanager/src/test/bundles/explicitpar/META-INF/persistence.xml
core/trunk/entitymanager/src/test/java/org/hibernate/ejb/test/packaging/PackagingTestCase.java
Log:
HHH-4666 - Implement the clarified rules for resource discovery (esp for
<mapping-file> and co)
Refactored packaged tests while investigating this issue. Made sure packages get created
in a subdirectory of target
Modified: core/trunk/entitymanager/src/test/bundles/explicitpar/META-INF/persistence.xml
===================================================================
---
core/trunk/entitymanager/src/test/bundles/explicitpar/META-INF/persistence.xml 2010-03-02
23:06:13 UTC (rev 18917)
+++
core/trunk/entitymanager/src/test/bundles/explicitpar/META-INF/persistence.xml 2010-03-02
23:11:41 UTC (rev 18918)
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
version="2.0">
<persistence-unit name="manager1"
transaction-type="RESOURCE_LOCAL">
- <jar-file>${basedir}/target/externaljar.jar</jar-file>
+ <jar-file>${basedir}/target/packages/externaljar.jar</jar-file>
<class>org.hibernate.ejb.test.Cat</class>
<class>org.hibernate.ejb.test.Kitten</class>
<class>org.hibernate.ejb.test.Distributor</class>
Modified:
core/trunk/entitymanager/src/test/java/org/hibernate/ejb/test/packaging/PackagingTestCase.java
===================================================================
---
core/trunk/entitymanager/src/test/java/org/hibernate/ejb/test/packaging/PackagingTestCase.java 2010-03-02
23:06:13 UTC (rev 18917)
+++
core/trunk/entitymanager/src/test/java/org/hibernate/ejb/test/packaging/PackagingTestCase.java 2010-03-02
23:11:41 UTC (rev 18918)
@@ -1,4 +1,4 @@
-// $Id:$
+// $Id$
/*
* JBoss, Home of Professional Open Source
* Copyright 2009, Red Hat, Inc. and/or its affiliates, and individual contributors
@@ -22,6 +22,7 @@
import java.net.URL;
import java.net.URLClassLoader;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
import junit.framework.TestCase;
@@ -89,6 +90,8 @@
catch ( MalformedURLException e ) {
fail( "Unable to build custom class loader" );
}
+ targetDir = new File( targetDir, "packages" );
+ targetDir.mkdirs();
}
@Override
@@ -105,9 +108,9 @@
Thread.currentThread().setContextClassLoader( originalClassLoader );
}
- protected void addPackageToClasspath(File... testPackages) throws MalformedURLException
{
+ protected void addPackageToClasspath(File... files) throws MalformedURLException {
List<URL> urlList = new ArrayList<URL>();
- for ( File file : testPackages ) {
+ for ( File file : files ) {
urlList.add( file.toURL() );
}
URLClassLoader classLoader = new URLClassLoader(
@@ -116,6 +119,15 @@
Thread.currentThread().setContextClassLoader( classLoader );
}
+ protected void addPackageToClasspath(URL... urls) throws MalformedURLException {
+ List<URL> urlList = new ArrayList<URL>();
+ urlList.addAll( Arrays.asList( urls ) );
+ URLClassLoader classLoader = new URLClassLoader(
+ urlList.toArray( new URL[urlList.size()] ), originalClassLoader
+ );
+ Thread.currentThread().setContextClassLoader( classLoader );
+ }
+
protected File buildDefaultPar() {
String fileName = "defaultpar.par";
JavaArchive archive = Archives.create( fileName, JavaArchive.class );