Author: rmannibucau
Date: Wed Jul 16 19:07:20 2014
New Revision: 1611141
URL: http://svn.apache.org/r1611141
Log:
style fpr CmpJarBuilder + fixing RemoteTomEEEJBContainerIT test and
TomcatClassPath
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/CmpJarBuilder.java
tomee/tomee/trunk/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java
tomee/tomee/trunk/tomee/apache-tomee/src/main/java/org/apache/tomee/RemoteTomEEEJBContainer.java
tomee/tomee/trunk/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/CmpJarBuilder.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/CmpJarBuilder.java?rev=1611141&r1=1611140&r2=1611141&view=diff
==============================================================================
---
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/CmpJarBuilder.java
(original)
+++
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/CmpJarBuilder.java
Wed Jul 16 19:07:20 2014
@@ -36,7 +36,6 @@ import org.apache.openjpa.jdbc.meta.Mapp
import org.apache.openjpa.jdbc.meta.NoneMappingDefaults;
import org.apache.openjpa.jdbc.sql.HSQLDictionary;
import org.apache.openjpa.lib.util.BytecodeWriter;
-import org.apache.openjpa.meta.AccessCode;
import org.apache.openjpa.meta.MetaDataModes;
import org.apache.openjpa.meta.MetaDataRepository;
import org.apache.openjpa.persistence.jdbc.PersistenceMappingFactory;
@@ -399,7 +398,7 @@ public class CmpJarBuilder {
}
}
- private static class Entry {
+ private static final class Entry {
private final String clazz;
private final String name;
private final byte[] bytes;
@@ -411,7 +410,7 @@ public class CmpJarBuilder {
}
}
- private static class StoringBytecodeBytecodeWriter implements
BytecodeWriter {
+ private static final class StoringBytecodeBytecodeWriter implements
BytecodeWriter {
private final Map<String, byte[]> bytecodes = new HashMap<>();
private final ClassLoader loader;
@@ -438,7 +437,7 @@ public class CmpJarBuilder {
}
}
- private static class CommonClassWriterHack extends ClassWriter {
+ private static final class CommonClassWriterHack extends ClassWriter {
private final ClassLoader loader;
private CommonClassWriterHack(final ClassLoader loader) {
Modified:
tomee/tomee/trunk/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java?rev=1611141&r1=1611140&r2=1611141&view=diff
==============================================================================
---
tomee/tomee/trunk/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java
(original)
+++
tomee/tomee/trunk/container/openejb-loader/src/main/java/org/apache/openejb/loader/TomcatClassPath.java
Wed Jul 16 19:07:20 2014
@@ -137,7 +137,7 @@ public class TomcatClassPath extends Bas
classLoader = serverLoader;
}
- addRepositoryMethod.invoke(classLoader, jar.toExternalForm());
+ addRepositoryMethod.invoke(classLoader, jar);
}
private boolean useServerClassLoader(final URL jar) {
@@ -158,7 +158,7 @@ public class TomcatClassPath extends Bas
try {
final Object cp = getURLClassPath((URLClassLoader)
getClassLoader());
final Class<?> clazz = cp.getClass();
- return clazz.getDeclaredMethod("getURLs", URL.class);
+ return clazz.getDeclaredMethod("addURL", URL.class);
} catch (final Exception e) {
throw new LoaderRuntimeException(e);
}
@@ -214,11 +214,11 @@ public class TomcatClassPath extends Bas
return AccessController.doPrivileged(new PrivilegedAction<Method>() {
@Override
public Method run() {
- final Method method;
try {
- final Class clazz = getClassLoader().getClass();
- method = clazz.getDeclaredMethod("addRepository",
String.class);
- method.setAccessible(true);
+ final Method method =
URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
+ if (!method.isAccessible()) {
+ method.setAccessible(true);
+ }
return method;
} catch (final Exception e2) {
throw (IllegalStateException) new
IllegalStateException("Unable to find or access the addRepository method in
StandardClassLoader").initCause(e2);
Modified:
tomee/tomee/trunk/tomee/apache-tomee/src/main/java/org/apache/tomee/RemoteTomEEEJBContainer.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/apache-tomee/src/main/java/org/apache/tomee/RemoteTomEEEJBContainer.java?rev=1611141&r1=1611140&r2=1611141&view=diff
==============================================================================
---
tomee/tomee/trunk/tomee/apache-tomee/src/main/java/org/apache/tomee/RemoteTomEEEJBContainer.java
(original)
+++
tomee/tomee/trunk/tomee/apache-tomee/src/main/java/org/apache/tomee/RemoteTomEEEJBContainer.java
Wed Jul 16 19:07:20 2014
@@ -88,6 +88,7 @@ public class RemoteTomEEEJBContainer ext
final QuickServerXmlParser parser = QuickServerXmlParser.parse(new
File(home, "conf/server.xml"));
final String remoteEjb = System.getProperty(Context.PROVIDER_URL,
"http://" + parser.host() + ":" + parser.http() + "/tomee/ejb");
+ System.setProperty(RemoteServer.SERVER_SHUTDOWN_PORT,
parser.stop());
try {
instance = new RemoteTomEEEJBContainer();
Modified:
tomee/tomee/trunk/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java?rev=1611141&r1=1611140&r2=1611141&view=diff
==============================================================================
---
tomee/tomee/trunk/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
(original)
+++
tomee/tomee/trunk/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
Wed Jul 16 19:07:20 2014
@@ -18,6 +18,7 @@ package org.apache.tomee;
import org.apache.openejb.loader.Files;
import org.apache.openejb.loader.IO;
+import org.apache.openejb.util.NetworkUtil;
import org.junit.Test;
import javax.ejb.embeddable.EJBContainer;
@@ -29,6 +30,7 @@ import java.net.URL;
import java.util.HashMap;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
public class RemoteTomEEEJBContainerIT {
@Test
@@ -40,19 +42,42 @@ public class RemoteTomEEEJBContainerIT {
writer.write("Hello");
writer.close();
+ final File tomee = new
File("target/webprofile-work-dir/").listFiles(new FileFilter() {
+ @Override
+ public boolean accept(final File pathname) {
+ return pathname.isDirectory() &&
pathname.getName().startsWith("apache-tomcat-");
+ }
+ })[0];
+ if (tomee == null) {
+ fail("tomee not built");
+ }
+
+ final FileWriter serverXml = new FileWriter(new File(tomee,
"conf/server.xml"));
+ final int http = NetworkUtil.getNextAvailablePort();
+ serverXml.write("<?xml version='1.0' encoding='utf-8'?>\n" +
+ "<Server port=\"" + NetworkUtil.getNextAvailablePort() + "\"
shutdown=\"SHUTDOWN\">\n" +
+ " <!-- TomEE plugin for Tomcat -->\n" +
+ " <Listener
className=\"org.apache.tomee.catalina.ServerListener\" />\n" +
+ " <Service name=\"Catalina\">\n" +
+ " <Connector port=\"" + http + "\" protocol=\"HTTP/1.1\" />\n" +
+ " <Engine name=\"Catalina\" defaultHost=\"localhost\">\n" +
+ " <Host name=\"localhost\" appBase=\"webapps\"\n" +
+ " unpackWARs=\"true\" autoDeploy=\"true\">\n" +
+ " </Host>\n" +
+ " </Engine>\n" +
+ " </Service>\n" +
+ "</Server>\n");
+ serverXml.close();
+
EJBContainer container = null;
try {
container = EJBContainer.createEJBContainer(new HashMap<Object,
Object>() {{
put(EJBContainer.PROVIDER, "tomee-remote");
put(EJBContainer.MODULES, app.getAbsolutePath());
- put("openejb.home", new
File("target/webprofile-work-dir/").listFiles(new FileFilter() {
- @Override
- public boolean accept(final File pathname) {
- return pathname.isDirectory() &&
pathname.getName().startsWith("apache-tomcat-");
- }
- })[0].getAbsolutePath());
+ put("openejb.home", tomee.getAbsolutePath());
}});
- assertEquals("Hello", IO.slurp(new
URL("http://localhost:8080/webapp/index.html")));
+ final URL url = new URL("http://localhost:" + http +
"/webapp/index.html");
+ assertEquals("Hello", IO.slurp(url));
} finally {
if (container != null) {
container.close();