You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by st...@apache.org on 2015/05/12 16:45:58 UTC
[1/8] tomee git commit: TOMEE-1579 one more step to do friendly jars
(executable) + slight rework of our tomee-embedded uber jar to avoid to bring
descriptors we don't want
Repository: tomee
Updated Branches:
refs/heads/fb_tomee2_owb16 a19d26e0f -> fc1207450
TOMEE-1579 one more step to do friendly jars (executable) + slight rework of our tomee-embedded uber jar to avoid to bring descriptors we don't want
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/15188752
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/15188752
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/15188752
Branch: refs/heads/fb_tomee2_owb16
Commit: 151887528f8d15ad5c01a36185b0375c7d463640
Parents: 554ccb1
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Wed May 6 12:51:40 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Wed May 6 12:51:40 2015 +0200
----------------------------------------------------------------------
.../apache/openejb/config/DeploymentLoader.java | 28 ++++++++++++++++++--
tomee/tomee-embedded/pom.xml | 28 ++++++++++++++++++++
.../java/org/apache/tomee/embedded/Main.java | 11 ++++++++
3 files changed, 65 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/15188752/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
----------------------------------------------------------------------
diff --git a/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java b/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
index 1242ae2..58ba02e 100644
--- a/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
+++ b/container/openejb-core/src/main/java/org/apache/openejb/config/DeploymentLoader.java
@@ -958,8 +958,10 @@ public class DeploymentLoader implements DeploymentFilterable {
ensureContainerUrls();
webUrls.addAll(containerUrls);
+ final SystemInstance systemInstance = SystemInstance.get();
+
// add these urls first to ensure we load classes from here first
- final String externalRepos = SystemInstance.get().getProperty("tomee." + warFile.getName().replace(".war", "") + ".externalRepositories");
+ final String externalRepos = systemInstance.getProperty("tomee." + warFile.getName().replace(".war", "") + ".externalRepositories");
List<URL> externalUrls = null;
if (externalRepos != null) {
externalUrls = new ArrayList<URL>();
@@ -1023,12 +1025,34 @@ public class DeploymentLoader implements DeploymentFilterable {
// if we want to manage it in a generic way
// simply add a boolean shared between tomcat and openejb world
// to know if we should fire it or not
- SystemInstance.get().fireEvent(new BeforeDeploymentEvent(webUrlsArray, parentClassLoader));
+ systemInstance.fireEvent(new BeforeDeploymentEvent(webUrlsArray, parentClassLoader));
final ClassLoader warClassLoader = ClassLoaderUtil.createTempClassLoader(appId, webUrlsArray, parentClassLoader);
// create web module
final List<URL> scannableUrls = filterWebappUrls(webUrlsArray, descriptors.get(NewLoaderLogic.EXCLUSION_FILE));
+ // executable war will add war in scannable urls, we don't want it since it will surely contain tomee, cxf, ...
+ if (Boolean.parseBoolean(systemInstance.getProperty("openejb.core.skip-war-in-loader", "true"))) {
+ File archive = warFile;
+ if (!archive.getName().endsWith(".war")) {
+ archive = new File(warFile.getParentFile(), warFile.getName() + ".war");
+ final String unpackDir = systemInstance.getProperty("tomee.unpack.dir");
+ if (unpackDir != null && !archive.isFile()) {
+ try {
+ archive = new File(systemInstance.getBase().getDirectory(unpackDir, false), warFile.getName());
+ } catch (final IOException e) {
+ // no-op
+ }
+ }
+ }
+ if (archive.isFile()) {
+ try {
+ scannableUrls.remove(archive.toURI().toURL());
+ } catch (final MalformedURLException e) {
+ // no-op
+ }
+ }
+ }
if (externalUrls != null) {
for (final URL url : externalUrls) {
if (scannableUrls.contains(url)) {
http://git-wip-us.apache.org/repos/asf/tomee/blob/15188752/tomee/tomee-embedded/pom.xml
----------------------------------------------------------------------
diff --git a/tomee/tomee-embedded/pom.xml b/tomee/tomee-embedded/pom.xml
index f8c0f0a..e000f66 100644
--- a/tomee/tomee-embedded/pom.xml
+++ b/tomee/tomee-embedded/pom.xml
@@ -66,6 +66,34 @@
<createDependencyReducedPom>false</createDependencyReducedPom>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>uber</shadedClassifierName>
+ <transformers>
+ <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+ <mainClass>org.apache.tomee.embedded.Main</mainClass>
+ </transformer>
+ <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
+ <resource>META-INF/cxf/bus-extensions.txt</resource>
+ </transformer>
+ <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
+ <resource>META-INF/openwebbeans/openwebbeans.properties</resource>
+ </transformer>
+ </transformers>
+ <filters>
+ <filter>
+ <artifact>*:*</artifact>
+ <excludes>
+ <exclude>META-INF/ejb-jar.xml</exclude>
+ <exclude>META-INF/openejb-jar.xml</exclude>
+ <exclude>META-INF/web-fragment.xml</exclude>
+ <!--
+ NOTE:
+ we shouldn't exclude faces-config.xml while we didn't impl the feature in another manner
+ but it breaks all apps not using JSF.
+ Solution would be to handle it more deeply in our myfaces integration
+ -->
+ <exclude>META-INF/faces-config.xml</exclude>
+ </excludes>
+ </filter>
+ </filters>
</configuration>
</execution>
</executions>
http://git-wip-us.apache.org/repos/asf/tomee/blob/15188752/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Main.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Main.java b/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Main.java
index e8edf6c..1720f9f 100644
--- a/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Main.java
+++ b/tomee/tomee-embedded/src/main/java/org/apache/tomee/embedded/Main.java
@@ -27,6 +27,8 @@ import org.apache.commons.cli.ParseException;
import org.apache.commons.cli.PosixParser;
import org.apache.openejb.loader.ProvisioningUtil;
+import static org.apache.openejb.loader.JarLocation.jarLocation;
+
public class Main {
public static final String PORT = "port";
public static final String SHUTDOWN = "shutdown";
@@ -59,6 +61,7 @@ public class Main {
contexts = null;
}
+ boolean autoWar = true;
int i = 0;
if (line.hasOption(PATH)) {
for (final String path : line.getOptionValues(PATH)) {
@@ -77,10 +80,18 @@ public class Main {
container.deploy(name, file, true);
}
}
+ autoWar = false;
}
if (line.hasOption(AS_WAR)) {
container.deployClasspathAsWebApp(contexts == null || i == contexts.length ? "" : contexts[i],
line.hasOption(DOC_BASE) ? new File(line.getOptionValue(DOC_BASE)) : null);
+ autoWar = false;
+ }
+ if (autoWar) { // nothing deployed check if we are a war and deploy ourself then
+ final File me = jarLocation(Main.class);
+ if (me.getName().endsWith(".war")) {
+ container.deploy(contexts == null || i == contexts.length ? "" : contexts[i], me);
+ }
}
Runtime.getRuntime().addShutdownHook(new Thread() {
[8/8] tomee git commit: Merge branch 'master' into fb_tomee2_owb16
Posted by st...@apache.org.
Merge branch 'master' into fb_tomee2_owb16
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/fc120745
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/fc120745
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/fc120745
Branch: refs/heads/fb_tomee2_owb16
Commit: fc12074507a6db69e93923a01c953b23077892fe
Parents: 478671a 25207a0
Author: Mark Struberg <st...@apache.org>
Authored: Tue May 12 16:45:38 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Tue May 12 16:45:38 2015 +0200
----------------------------------------------------------------------
.../apache/openejb/arquillian/common/Setup.java | 33 ++++++++++++--
.../remote/RemoteTomEEConfiguration.java | 20 ++++++++
.../arquillian/remote/RemoteTomEEContainer.java | 27 +++++++++--
.../openejb/arquillian/AdditionalLibsTest.java | 6 +--
.../arquillian/javaagent/JavaagentTest.java | 48 ++++++++++++++++++++
.../src/test/resources/arquillian.xml | 5 +-
6 files changed, 125 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
[4/8] tomee git commit: TomEE header
Posted by st...@apache.org.
TomEE header
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/268b57c8
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/268b57c8
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/268b57c8
Branch: refs/heads/fb_tomee2_owb16
Commit: 268b57c868c055e3788b85d6ed6a192da094e808
Parents: 2c4047e
Author: andygumbrecht@apache.org <an...@gmx.de>
Authored: Thu May 7 22:03:35 2015 +0200
Committer: andygumbrecht@apache.org <an...@gmx.de>
Committed: Thu May 7 22:03:35 2015 +0200
----------------------------------------------------------------------
.../apache/tomee/RemoteTomEEEJBContainerIT.java | 2 +-
.../java/org/apache/tomee/installer/Installer.java | 17 +++++++++++++++++
2 files changed, 18 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/268b57c8/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
----------------------------------------------------------------------
diff --git a/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java b/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
index 70fcf6f..17731b9 100644
--- a/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
+++ b/tomee/apache-tomee/src/test/java/org/apache/tomee/RemoteTomEEEJBContainerIT.java
@@ -67,7 +67,7 @@ public class RemoteTomEEEJBContainerIT {
" <!-- 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" +
+ " <Connector port=\"" + http + "\" protocol=\"HTTP/1.1\" xpoweredBy=\"false\" server=\"Apache TomEE\" />\n" +
" <Engine name=\"Catalina\" defaultHost=\"localhost\">\n" +
" <Host name=\"localhost\" appBase=\"webapps\"\n" +
" unpackWARs=\"true\" autoDeploy=\"true\">\n" +
http://git-wip-us.apache.org/repos/asf/tomee/blob/268b57c8/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
index 0308c3d..60bd8f7 100644
--- a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
+++ b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
@@ -448,6 +448,23 @@ public class Installer implements InstallerInterface {
alerts.addError("Error while adding listener to server.xml file", e);
}
+ //Add TomEE header
+ try {
+ newServerXml = Installers.replace(serverXmlOriginal,
+ "<Connector port=\"8080\"",
+ "<Connector port=\"8080\"",
+ "/>",
+ "xpoweredBy=\"false\" server=\"Apache TomEE\" />");
+
+ newServerXml = Installers.replace(serverXmlOriginal,
+ "<Connector port=\"8443\"",
+ "<Connector port=\"8443\"",
+ "/>",
+ "xpoweredBy=\"false\" server=\"Apache TomEE\" />");
+ } catch (final IOException e) {
+ alerts.addError("Error adding server attribute to server.xml file", e);
+ }
+
// overwrite server.xml
if (Installers.writeAll(paths.getServerXmlFile(), newServerXml, alerts)) {
alerts.addInfo("Add OpenEJB listener to server.xml");
[6/8] tomee git commit: Merge branch 'master' into fb_tomee2_owb16
Posted by st...@apache.org.
Merge branch 'master' into fb_tomee2_owb16
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/478671a4
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/478671a4
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/478671a4
Branch: refs/heads/fb_tomee2_owb16
Commit: 478671a4c92f0a6765a1e7cefefeb94ae1fe1aa6
Parents: a19d26e 515d875
Author: Mark Struberg <st...@apache.org>
Authored: Fri May 8 12:36:26 2015 +0200
Committer: Mark Struberg <st...@apache.org>
Committed: Fri May 8 12:36:26 2015 +0200
----------------------------------------------------------------------
.../jaxrs/context/EjbContextInjectionTest.java | 16 ++++++++---
.../EjbInterceptorContextInjectionTest.java | 13 ++++++++-
.../tests/jaxrs/suspended/SuspendedTest.java | 5 ++--
.../apache/openejb/config/DeploymentLoader.java | 28 ++++++++++++++++++--
.../maven/plugin/test/JAXRSReloadTest.java | 17 +++++++++---
pom.xml | 2 +-
.../apache/tomee/RemoteTomEEEJBContainerIT.java | 2 +-
.../org/apache/tomee/installer/Installer.java | 17 ++++++++++++
tomee/tomee-embedded/pom.xml | 28 ++++++++++++++++++++
.../java/org/apache/tomee/embedded/Main.java | 11 ++++++++
10 files changed, 126 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/478671a4/pom.xml
----------------------------------------------------------------------
[2/8] tomee git commit: cxf 3.1 side effects on tests
Posted by st...@apache.org.
cxf 3.1 side effects on tests
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/be3996fa
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/be3996fa
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/be3996fa
Branch: refs/heads/fb_tomee2_owb16
Commit: be3996fa42a51d8e2848891fd63bf479d39d2212
Parents: 1518875
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Wed May 6 14:11:10 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Wed May 6 14:11:10 2015 +0200
----------------------------------------------------------------------
.../jaxrs/context/EjbContextInjectionTest.java | 16 +++++++++++++---
.../EjbInterceptorContextInjectionTest.java | 13 ++++++++++++-
.../tests/jaxrs/suspended/SuspendedTest.java | 5 +++--
.../openejb/maven/plugin/test/JAXRSReloadTest.java | 17 ++++++++++++++---
4 files changed, 42 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/be3996fa/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbContextInjectionTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbContextInjectionTest.java b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbContextInjectionTest.java
index 7334acc..5914800 100644
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbContextInjectionTest.java
+++ b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbContextInjectionTest.java
@@ -27,6 +27,9 @@ import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
+import java.io.IOException;
+import java.net.HttpURLConnection;
+import java.net.URL;
import javax.ejb.Singleton;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -39,8 +42,6 @@ import javax.ws.rs.core.SecurityContext;
import javax.ws.rs.core.UriInfo;
import javax.ws.rs.ext.ContextResolver;
import javax.ws.rs.ext.Providers;
-import java.io.IOException;
-import java.net.URL;
import static org.junit.Assert.assertEquals;
@@ -63,10 +64,19 @@ public class EjbContextInjectionTest {
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL(url.toExternalForm() + "injections/check"));
+ final String response = slurp(new URL(url.toExternalForm() + "injections/check"));
assertEquals("true", response);
}
+ private static String slurp(final URL url) throws IOException {
+ final HttpURLConnection urlConnection = HttpURLConnection.class.cast(url.openConnection());
+ try {
+ urlConnection.setRequestProperty("Accept", "text/plain");
+ return IO.slurp(urlConnection.getInputStream());
+ } finally {
+ urlConnection.disconnect();
+ }
+ }
@Singleton
@Path("/injections")
http://git-wip-us.apache.org/repos/asf/tomee/blob/be3996fa/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbInterceptorContextInjectionTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbInterceptorContextInjectionTest.java b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbInterceptorContextInjectionTest.java
index 2039035..c470989 100644
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbInterceptorContextInjectionTest.java
+++ b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/context/EjbInterceptorContextInjectionTest.java
@@ -44,6 +44,7 @@ import javax.ws.rs.core.UriInfo;
import javax.ws.rs.ext.ContextResolver;
import javax.ws.rs.ext.Providers;
import java.io.IOException;
+import java.net.HttpURLConnection;
import java.net.URL;
import static org.junit.Assert.assertEquals;
@@ -70,10 +71,20 @@ public class EjbInterceptorContextInjectionTest {
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL(url.toExternalForm() + "injections/check"));
+ final String response = slurp(new URL(url.toExternalForm() + "injections/check"));
assertEquals("true", response);
}
+ private static String slurp(final URL url) throws IOException {
+ final HttpURLConnection urlConnection = HttpURLConnection.class.cast(url.openConnection());
+ try {
+ urlConnection.setRequestProperty("Accept", "text/plain");
+ return IO.slurp(urlConnection.getInputStream());
+ } finally {
+ urlConnection.disconnect();
+ }
+ }
+
@Singleton
@Interceptors(RsEjbInterceptor.class)
http://git-wip-us.apache.org/repos/asf/tomee/blob/be3996fa/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/suspended/SuspendedTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/suspended/SuspendedTest.java b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/suspended/SuspendedTest.java
index cd97a61..3d8741c 100644
--- a/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/suspended/SuspendedTest.java
+++ b/arquillian/arquillian-tomee-tests/arquillian-tomee-jaxrs-tests/src/test/java/org/apache/openejb/arquillian/tests/jaxrs/suspended/SuspendedTest.java
@@ -32,6 +32,7 @@ import java.util.concurrent.atomic.AtomicReference;
import javax.ws.rs.core.Response;
import static java.lang.Thread.sleep;
+import static javax.ws.rs.core.MediaType.TEXT_PLAIN_TYPE;
import static org.junit.Assert.assertEquals;
@RunWith(Arquillian.class)
@@ -51,12 +52,12 @@ public class SuspendedTest {
new Thread() {
@Override
public void run() {
- response.set(WebClient.create(url.toExternalForm() + "touch").get());
+ response.set(WebClient.create(url.toExternalForm() + "touch").accept(TEXT_PLAIN_TYPE).get());
end.countDown();
}
}.start();
final WebClient client = WebClient.create(url.toExternalForm() + "touch");
- while (!client.reset().path("check").get(Boolean.class)) {
+ while (!client.reset().path("check").accept(TEXT_PLAIN_TYPE).get(Boolean.class)) {
sleep(1000);
}
client.reset().path("answer").post("hello");
http://git-wip-us.apache.org/repos/asf/tomee/blob/be3996fa/maven/tomee-maven-plugin/src/test/java/org/apache/openejb/maven/plugin/test/JAXRSReloadTest.java
----------------------------------------------------------------------
diff --git a/maven/tomee-maven-plugin/src/test/java/org/apache/openejb/maven/plugin/test/JAXRSReloadTest.java b/maven/tomee-maven-plugin/src/test/java/org/apache/openejb/maven/plugin/test/JAXRSReloadTest.java
index bd334dc..b921b25 100644
--- a/maven/tomee-maven-plugin/src/test/java/org/apache/openejb/maven/plugin/test/JAXRSReloadTest.java
+++ b/maven/tomee-maven-plugin/src/test/java/org/apache/openejb/maven/plugin/test/JAXRSReloadTest.java
@@ -30,6 +30,7 @@ import org.junit.Test;
import java.io.File;
import java.io.IOException;
+import java.net.HttpURLConnection;
import java.net.URL;
import static java.lang.Thread.sleep;
@@ -83,7 +84,7 @@ public class JAXRSReloadTest {
@Test
public void simpleStart() throws Exception {
// eager check setup is ok and it works (avoid to mix redeployment checks with simple deployment)
- assertThat(IO.slurp(new URL(url + "/app-jaxrs/ping")).trim(), is("pong"));
+ assertThat(slurp(new URL(url + "/app-jaxrs/ping")).trim(), is("pong"));
long lastTime = 0;
for (int i = 0; i < 10; i++) {
@@ -91,14 +92,24 @@ public class JAXRSReloadTest {
mojo.reload();
// it still works
- assertThat(IO.slurp(new URL(url + "/app-jaxrs/ping")).trim(), is("pong"));
+ assertThat(slurp(new URL(url + "/app-jaxrs/ping")).trim(), is("pong"));
// we redeployed since we have a new deployment date
- final long time = Long.parseLong(IO.slurp(new URL(url + "/app-jaxrs/ping/time")).trim());
+ final long time = Long.parseLong(slurp(new URL(url + "/app-jaxrs/ping/time")).trim());
if (i > 0) {
assertTrue(time >= lastTime);
}
lastTime = time;
}
}
+
+ private static String slurp(final URL url) throws IOException {
+ final HttpURLConnection urlConnection = HttpURLConnection.class.cast(url.openConnection());
+ try {
+ urlConnection.setRequestProperty("Accept", "text/plain");
+ return IO.slurp(urlConnection.getInputStream());
+ } finally {
+ urlConnection.disconnect();
+ }
+ }
}
[5/8] tomee git commit: Typo
Posted by st...@apache.org.
Typo
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/515d8753
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/515d8753
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/515d8753
Branch: refs/heads/fb_tomee2_owb16
Commit: 515d8753aa9b9e74810db4ff00921e4e67bfefc4
Parents: 268b57c
Author: andygumbrecht@apache.org <an...@gmx.de>
Authored: Thu May 7 22:59:11 2015 +0200
Committer: andygumbrecht@apache.org <an...@gmx.de>
Committed: Thu May 7 22:59:11 2015 +0200
----------------------------------------------------------------------
.../src/main/java/org/apache/tomee/installer/Installer.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/515d8753/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
----------------------------------------------------------------------
diff --git a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
index 60bd8f7..919ae48 100644
--- a/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
+++ b/tomee/tomee-common/src/main/java/org/apache/tomee/installer/Installer.java
@@ -450,13 +450,13 @@ public class Installer implements InstallerInterface {
//Add TomEE header
try {
- newServerXml = Installers.replace(serverXmlOriginal,
+ newServerXml = Installers.replace(newServerXml,
"<Connector port=\"8080\"",
"<Connector port=\"8080\"",
"/>",
"xpoweredBy=\"false\" server=\"Apache TomEE\" />");
- newServerXml = Installers.replace(serverXmlOriginal,
+ newServerXml = Installers.replace(newServerXml,
"<Connector port=\"8443\"",
"<Connector port=\"8443\"",
"/>",
[3/8] tomee git commit: tomcat 8.0.22
Posted by st...@apache.org.
tomcat 8.0.22
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/2c4047e1
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/2c4047e1
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/2c4047e1
Branch: refs/heads/fb_tomee2_owb16
Commit: 2c4047e1456a14f7a3f054f33a87b3d7ee9f552a
Parents: be3996f
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Thu May 7 09:33:53 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Thu May 7 09:33:53 2015 +0200
----------------------------------------------------------------------
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/2c4047e1/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 4e9adc2..c063d78 100644
--- a/pom.xml
+++ b/pom.xml
@@ -126,7 +126,7 @@
<version.shrinkwrap.descriptor>2.0.0-alpha-7</version.shrinkwrap.descriptor>
<version.shrinkwrap.shrinkwrap>1.2.2</version.shrinkwrap.shrinkwrap>
- <tomcat.version>8.0.21</tomcat.version>
+ <tomcat.version>8.0.22</tomcat.version>
<cxf.version>3.1.0</cxf.version>
<ehcache.version>2.8.5</ehcache.version>
[7/8] tomee git commit: TOMEE-1581 endorsed and javaagent for tomee
remote arquillian adapter
Posted by st...@apache.org.
TOMEE-1581 endorsed and javaagent for tomee remote arquillian adapter
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/25207a09
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/25207a09
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/25207a09
Branch: refs/heads/fb_tomee2_owb16
Commit: 25207a096c397ab885fb8d260c4a6fd688063cf8
Parents: 515d875
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Mon May 11 09:44:08 2015 +0200
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Mon May 11 09:44:08 2015 +0200
----------------------------------------------------------------------
.../apache/openejb/arquillian/common/Setup.java | 33 ++++++++++++--
.../remote/RemoteTomEEConfiguration.java | 20 ++++++++
.../arquillian/remote/RemoteTomEEContainer.java | 27 +++++++++--
.../openejb/arquillian/AdditionalLibsTest.java | 6 +--
.../arquillian/javaagent/JavaagentTest.java | 48 ++++++++++++++++++++
.../src/test/resources/arquillian.xml | 5 +-
6 files changed, 125 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java b/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
index e57fc70..c390190 100644
--- a/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
+++ b/arquillian/arquillian-tomee-common/src/main/java/org/apache/openejb/arquillian/common/Setup.java
@@ -42,6 +42,8 @@ import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
+import static java.util.Collections.emptyMap;
+
/**
* @version $Rev$ $Date$
*/
@@ -357,13 +359,13 @@ public class Setup {
Files.delete(destination);
}
- public static void addTomEELibraries(final File tomeeHome, final String additionalLibs) {
+ public static Map<File, String> addTomEELibraries(final File libFolder, final String additionalLibs, final boolean parseArgs) {
if (additionalLibs == null) {
- return;
+ return emptyMap();
}
final String libs = additionalLibs.trim();
if (libs.isEmpty()) {
- return;
+ return emptyMap();
}
try { // initializing the SystemInstance because we'll need it for configuration
@@ -374,22 +376,43 @@ public class Setup {
// no-op
}
- final File libFolder = new File(tomeeHome, "lib");
+ final Map<File, String> configs = new HashMap<>();
for (final String lib : libs.split("\n")) {
final String trim = lib.trim();
if (trim.isEmpty() || trim.startsWith("#")) {
continue;
}
+
+ final String args;
+ if (parseArgs) { // javaagent friendly
+ int argsIdx = trim.indexOf('=');
+ if (argsIdx < 0) {
+ argsIdx = trim.indexOf('?');
+ }
+ if (argsIdx > 0) {
+ args = trim.substring(argsIdx);
+ } else {
+ args = "";
+ }
+ } else {
+ args = null;
+ }
+
final Set<String> locations = ProvisioningUtil.realLocation(trim);
for (final String location : locations) {
final File from = new File(location);
try {
- org.apache.openejb.loader.IO.copy(from, new File(libFolder, from.getName()));
+ final File to = new File(libFolder, from.getName());
+ org.apache.openejb.loader.IO.copy(from, to);
+ if (args != null) {
+ configs.put(to, args);
+ }
} catch (final IOException e) {
throw new IllegalArgumentException(e);
}
}
}
+ return configs;
}
private static class TrueFilter implements FileFilter {
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEConfiguration.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEConfiguration.java b/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEConfiguration.java
index 8ed1fe1..63e78f0 100644
--- a/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEConfiguration.java
+++ b/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEConfiguration.java
@@ -39,6 +39,8 @@ public class RemoteTomEEConfiguration extends TomEEConfiguration {
private String conf;
private String bin;
private String lib;
+ private String endorsed;
+ private String javaagent;
private String additionalLibs;
private boolean cleanOnStartUp;
private boolean debug;
@@ -94,6 +96,24 @@ public class RemoteTomEEConfiguration extends TomEEConfiguration {
return additionalLibs;
}
+ public String getEndorsed() {
+ return endorsed;
+ }
+
+ public String getJavaagent() {
+ return javaagent;
+ }
+
+ @Multiline
+ public void setEndorsed(final String endorsed) {
+ this.endorsed = endorsed;
+ }
+
+ @Multiline
+ public void setJavaagent(final String javaagent) {
+ this.javaagent = javaagent;
+ }
+
@Multiline
public void setAdditionalLibs(final String additionalLibs) {
this.additionalLibs = additionalLibs;
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEContainer.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEContainer.java b/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEContainer.java
index 15fb446..ce953f7 100644
--- a/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEContainer.java
+++ b/arquillian/arquillian-tomee-remote/src/main/java/org/apache/tomee/arquillian/remote/RemoteTomEEContainer.java
@@ -30,7 +30,6 @@ import org.jboss.arquillian.container.spi.client.container.LifecycleException;
import org.jboss.arquillian.protocol.servlet.ServletMethodExecutor;
import org.jboss.shrinkwrap.api.Archive;
-import javax.naming.NamingException;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
@@ -44,6 +43,7 @@ import java.util.Properties;
import java.util.TreeMap;
import java.util.logging.Level;
import java.util.logging.Logger;
+import javax.naming.NamingException;
public class RemoteTomEEContainer extends TomEEContainer<RemoteTomEEConfiguration> {
private static final Logger logger = Logger.getLogger(RemoteTomEEContainer.class.getName());
@@ -214,14 +214,33 @@ public class RemoteTomEEContainer extends TomEEContainer<RemoteTomEEConfiguratio
Setup.synchronizeFolder(tomeeHome, configuration.getConf(), "conf");
Setup.synchronizeFolder(tomeeHome, configuration.getBin(), "bin");
Setup.synchronizeFolder(tomeeHome, configuration.getLib(), "lib");
- Setup.addTomEELibraries(tomeeHome, configuration.getAdditionalLibs());
+ Setup.addTomEELibraries(new File(tomeeHome, "lib"), configuration.getAdditionalLibs(), false);
+ if (configuration.getEndorsed() != null && !configuration.getEndorsed().isEmpty()) {
+ final File endorsed = new File(tomeeHome, "endorsed");
+ Files.mkdir(endorsed);
+ Setup.addTomEELibraries(endorsed, configuration.getEndorsed(), false);
+ }
+
+ String opts = configuration.getCatalina_opts();
+ if (configuration.getJavaagent() != null && !configuration.getJavaagent().isEmpty()) {
+ final File javaagent = new File(tomeeHome, "javaagent");
+ Files.mkdir(javaagent);
+ final Map<File, String> agents = Setup.addTomEELibraries(javaagent, configuration.getJavaagent(), true);
+ if (!agents.isEmpty()) {
+ if (opts == null) {
+ opts = "";
+ }
+ for (final Map.Entry<File, String> entry : agents.entrySet()) {
+ opts += " \"-javaagent:" + entry.getKey().getAbsolutePath() + entry.getValue() + "\"";
+ }
+ }
+ configuration.setCatalina_opts(opts);
+ }
Setup.configureServerXml(tomeeHome, configuration);
Setup.configureSystemProperties(tomeeHome, configuration);
- final String opts = configuration.getCatalina_opts();
-
Setup.exportProperties(tomeeHome, configuration, opts == null || (!opts.contains("-Xm") && !opts.matches(".*-XX:[^=]*Size=.*")));
Setup.installArquillianBeanDiscoverer(tomeeHome);
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/AdditionalLibsTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/AdditionalLibsTest.java b/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/AdditionalLibsTest.java
index 0b4bb19..6dcd604 100644
--- a/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/AdditionalLibsTest.java
+++ b/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/AdditionalLibsTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.openejb.arquillian;
-import org.apache.sirona.repositories.Repository;
+import org.apache.sirona.web.servlet.SironaFilter;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.Archive;
@@ -47,9 +47,9 @@ public class AdditionalLibsTest {
return name.startsWith("sirona-");
}
});
- assertEquals(3, sirona.length); // core, web, aop
+ assertEquals(1, sirona.length); // web
- assertNotNull(Repository.INSTANCE); // would fail if libs are missing
+ assertNotNull(new SironaFilter()); // would fail if libs are missing
}
private static class Tester {
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/javaagent/JavaagentTest.java
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/javaagent/JavaagentTest.java b/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/javaagent/JavaagentTest.java
new file mode 100644
index 0000000..6ef2951
--- /dev/null
+++ b/arquillian/arquillian-tomee-remote/src/test/java/org/apache/openejb/arquillian/javaagent/JavaagentTest.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openejb.arquillian.javaagent;
+
+import org.jboss.arquillian.container.test.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.EmptyAsset;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import java.lang.management.ManagementFactory;
+
+import static org.junit.Assert.fail;
+
+@RunWith(Arquillian.class)
+public class JavaagentTest {
+ @Deployment
+ public static Archive<?> empty() {
+ return ShrinkWrap.create(WebArchive.class, "javaagent.war").addAsResource(EmptyAsset.INSTANCE, "foo");
+ }
+
+ @Test
+ public void checkAgent() {
+ for (final String arg : ManagementFactory.getRuntimeMXBean().getInputArguments()) {
+ if (arg.startsWith("-javaagent") && arg.endsWith("sirona-javaagent-0.2-incubating-shaded.jar")) {
+ return;
+ }
+ }
+ fail("didnt find sirona as javaagent");
+ }
+}
http://git-wip-us.apache.org/repos/asf/tomee/blob/25207a09/arquillian/arquillian-tomee-remote/src/test/resources/arquillian.xml
----------------------------------------------------------------------
diff --git a/arquillian/arquillian-tomee-remote/src/test/resources/arquillian.xml b/arquillian/arquillian-tomee-remote/src/test/resources/arquillian.xml
index cb7fc55..2478713 100644
--- a/arquillian/arquillian-tomee-remote/src/test/resources/arquillian.xml
+++ b/arquillian/arquillian-tomee-remote/src/test/resources/arquillian.xml
@@ -28,10 +28,11 @@
<property name="ajpPort">-1</property>
<property name="dir">target/apache-tomee-remote</property>
<property name="additionalLibs">
- mvn:org.apache.sirona:sirona-core:0.2-incubating
- mvn:org.apache.sirona:sirona-aop:0.2-incubating
mvn:org.apache.sirona:sirona-web:0.2-incubating
</property>
+ <property name="javaagent">
+ mvn:org.apache.sirona:sirona-javaagent:0.2-incubating:jar:shaded
+ </property>
<property name="appWorkingDir">target/arquillian-test-working-dir</property>
<property name="properties">
openejb.classloader.forced-load=org.apache.openejb