You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by an...@apache.org on 2014/07/17 11:22:45 UTC
svn commit: r1611306 - in /tomee/tomee/trunk/server:
openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/
openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/
openejb-cxf/src/test/java/org/apache/openejb/server/cx...
Author: andygumbrecht
Date: Thu Jul 17 09:22:44 2014
New Revision: 1611306
URL: http://svn.apache.org/r1611306
Log:
Give ServiceDaemon another chance.
Test on random ports.
Modified:
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/AdvancedProviderConfigTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CDIApplicationTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CdiConstructorInjectionTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProviderWithConstructorTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProvidersShouldBeScannedTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsCDIInterceptorTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInjectionTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInterceptorInjectionTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsJMXTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsWithInterfaceTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingWithNoAppPathTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithMappingTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimplePojoTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SubResourceTest.java
tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/WebXmlSpecApplicationTest.java
tomee/tomee/trunk/server/openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/CxfContainerClassLoader.java
tomee/tomee/trunk/server/openejb-cxf/src/test/java/org/apache/openejb/server/cxf/CdiHandlersTest.java
tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiByConfigTest.java
tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiTest.java
tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianInitialContextTest.java
tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianServiceTest.java
tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/FilterRegistrationTest.java
tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/ServletRegistrationTest.java
tomee/tomee/trunk/server/openejb-server/src/main/java/org/apache/openejb/server/ServiceDaemon.java
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/AdvancedProviderConfigTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/AdvancedProviderConfigTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/AdvancedProviderConfigTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/AdvancedProviderConfigTest.java Thu Jul 17 09:22:44 2014
@@ -38,7 +38,6 @@ import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import javax.ws.rs.ext.MessageBodyReader;
import javax.ws.rs.ext.Providers;
import javax.xml.bind.ValidationEvent;
import javax.xml.bind.ValidationEventHandler;
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CDIApplicationTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CDIApplicationTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CDIApplicationTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CDIApplicationTest.java Thu Jul 17 09:22:44 2014
@@ -21,14 +21,19 @@ import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.server.cxf.rs.beans.MyFirstRestClass;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.inject.Inject;
import javax.ws.rs.core.Application;
import java.util.HashSet;
+import java.util.Properties;
import java.util.Set;
import static org.junit.Assert.assertEquals;
@@ -37,6 +42,19 @@ import static org.junit.Assert.assertTru
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class CDIApplicationTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes(cdi = true, value = {MyCdiRESTApplication.class, MyFirstRestClass.class, ACdiBeanInjectedInApp.class})
public WebApp war() {
@@ -49,7 +67,7 @@ public class CDIApplicationTest {
@Test
public void isCdi() {
assertTrue(MyCdiRESTApplication.injection);
- assertEquals("Hi from REST World!", WebClient.create("http://localhost:4204/foo/").path("/first/hi").get(String.class));
+ assertEquals("Hi from REST World!", WebClient.create("http://localhost:" + port + "/foo/").path("/first/hi").get(String.class));
}
public static class ACdiBeanInjectedInApp {
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CdiConstructorInjectionTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CdiConstructorInjectionTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CdiConstructorInjectionTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/CdiConstructorInjectionTest.java Thu Jul 17 09:22:44 2014
@@ -16,10 +16,18 @@
*/
package org.apache.openejb.server.cxf.rs;
-import static org.junit.Assert.assertEquals;
-
-import java.util.HashSet;
-import java.util.Set;
+import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.jee.WebApp;
+import org.apache.openejb.junit.ApplicationComposer;
+import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
+import org.apache.openejb.testing.EnableServices;
+import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.junit.runner.RunWith;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
@@ -28,19 +36,28 @@ import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Application;
import javax.ws.rs.core.Context;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.Set;
-import org.apache.cxf.jaxrs.client.WebClient;
-import org.apache.openejb.jee.WebApp;
-import org.apache.openejb.junit.ApplicationComposer;
-import org.apache.openejb.testing.Classes;
-import org.apache.openejb.testing.EnableServices;
-import org.apache.openejb.testing.Module;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class CdiConstructorInjectionTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes(value = {FullCDI.class, Service.class, CDIAndContext.class}, cdi = true)
public WebApp war() {
@@ -52,12 +69,12 @@ public class CdiConstructorInjectionTest
@Test
public void standardCDI() {
- assertEquals("service", WebClient.create("http://localhost:4204/app").path("/foo").get(String.class));
+ assertEquals("service", WebClient.create("http://localhost:" + port + "/app").path("/foo").get(String.class));
}
@Test
public void cdiAndContext() {
- assertEquals("GET", WebClient.create("http://localhost:4204/app").path("/bar").get(String.class));
+ assertEquals("GET", WebClient.create("http://localhost:" + port + "/app").path("/bar").get(String.class));
}
public static class Service {
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProviderWithConstructorTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProviderWithConstructorTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProviderWithConstructorTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProviderWithConstructorTest.java Thu Jul 17 09:22:44 2014
@@ -17,11 +17,16 @@
package org.apache.openejb.server.cxf.rs;
import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -40,6 +45,7 @@ import java.io.OutputStream;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import java.util.HashSet;
+import java.util.Properties;
import java.util.Set;
import static org.junit.Assert.assertEquals;
@@ -47,6 +53,22 @@ import static org.junit.Assert.assertEqu
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class ProviderWithConstructorTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
@Module
@Classes(value = {AnEndpointToCheckAProvider.class})
public WebApp war() {
@@ -58,7 +80,7 @@ public class ProviderWithConstructorTest
@Test
public void checkServiceWasDeployed() {
- assertEquals("/app", WebClient.create("http://localhost:4204/app").path("/foo").accept("openejb/constructor").get(String.class));
+ assertEquals("/app", WebClient.create("http://localhost:" + port + "/app").path("/foo").accept("openejb/constructor").get(String.class));
}
@Path("/foo")
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProvidersShouldBeScannedTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProvidersShouldBeScannedTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProvidersShouldBeScannedTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/ProvidersShouldBeScannedTest.java Thu Jul 17 09:22:44 2014
@@ -20,8 +20,12 @@ import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -32,12 +36,28 @@ import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class ProvidersShouldBeScannedTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .build();
+ }
+
@Module
@Classes({NeedAProvider.class, DontLetResourcesFail.class})
public static WebApp service() throws Exception {
@@ -46,7 +66,7 @@ public class ProvidersShouldBeScannedTes
@Test
public void check() throws Exception {
- final HttpURLConnection conn = HttpURLConnection.class.cast(new URL("http://127.0.0.1:4204/app/need-provider").openConnection());
+ final HttpURLConnection conn = HttpURLConnection.class.cast(new URL("http://127.0.0.1:" + port + "/app/need-provider").openConnection());
assertEquals("ok", IO.slurp(conn.getInputStream()));
conn.getInputStream().close();
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsCDIInterceptorTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsCDIInterceptorTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsCDIInterceptorTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsCDIInterceptorTest.java Thu Jul 17 09:22:44 2014
@@ -16,12 +16,17 @@
*/
package org.apache.openejb.server.cxf.rs;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -38,12 +43,29 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.net.URL;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class RsCDIInterceptorTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
@Module
@Classes(cdi = true, value = {InterceptedEJBRs.class, InterceptedRs.class}, cdiInterceptors = MockingInterceptor.class)
public WebApp war() {
@@ -53,13 +75,13 @@ public class RsCDIInterceptorTest {
@Test
public void ejb() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/foo/session-bean/check-ejb"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/foo/session-bean/check-ejb"));
assertEquals("mock", response);
}
@Test
public void pojo() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/foo/pojo/check-pojo"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/foo/pojo/check-pojo"));
assertEquals("mock", response);
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInjectionTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInjectionTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInjectionTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInjectionTest.java Thu Jul 17 09:22:44 2014
@@ -23,6 +23,9 @@ import org.apache.openejb.junit.Applicat
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -41,6 +44,22 @@ import static org.junit.Assert.assertEqu
@RunWith(ApplicationComposer.class)
public class RsInjectionTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
@Module
public static SingletonBean service() throws Exception {
final SingletonBean bean = new SingletonBean(RsInjection.class);
@@ -48,16 +67,9 @@ public class RsInjectionTest {
return bean;
}
- @Configuration
- public static Properties configuration() throws Exception {
- final Properties properties = new Properties();
- properties.setProperty(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true");
- return properties;
- }
-
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/RsInjectionTest/injections/check"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/RsInjectionTest/injections/check"));
assertEquals("true", response);
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInterceptorInjectionTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInterceptorInjectionTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInterceptorInjectionTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsInterceptorInjectionTest.java Thu Jul 17 09:22:44 2014
@@ -23,7 +23,10 @@ import org.apache.openejb.junit.Applicat
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
import org.junit.Assert;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -52,6 +55,21 @@ import static org.junit.Assert.assertEqu
@RunWith(ApplicationComposer.class)
public class RsInterceptorInjectionTest {
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
@Module
public static SingletonBean service() throws Exception {
final SingletonBean bean = new SingletonBean(RsInjection.class);
@@ -59,16 +77,9 @@ public class RsInterceptorInjectionTest
return bean;
}
- @Configuration
- public static Properties configuration() throws Exception {
- final Properties properties = new Properties();
- properties.setProperty(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true");
- return properties;
- }
-
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/RsInterceptorInjectionTest/injections/check"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/RsInterceptorInjectionTest/injections/check"));
assertEquals("true", response);
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsJMXTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsJMXTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsJMXTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsJMXTest.java Thu Jul 17 09:22:44 2014
@@ -20,8 +20,11 @@ import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.monitoring.LocalMBeanServer;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
import org.hamcrest.CoreMatchers;
import org.junit.AfterClass;
import org.junit.BeforeClass;
@@ -32,6 +35,7 @@ import javax.management.MalformedObjectN
import javax.management.ObjectName;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
+import java.util.Properties;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertThat;
@@ -41,6 +45,19 @@ import static org.junit.Assert.assertTru
@RunWith(ApplicationComposer.class)
public class RsJMXTest {
private static ObjectName name;
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .build();
+ }
@Module
@Classes(AnEndpoint.class)
@@ -50,7 +67,7 @@ public class RsJMXTest {
@BeforeClass
public static void before() throws MalformedObjectNameException {
- name = new ObjectName("openejb.management:j2eeType=JAX-RS,J2EEServer=openejb,J2EEApplication=http_//127.0.0.1_4204/app,EndpointType=Pojo,name=org.apache.openejb.server.cxf.rs.RsJMXTest$AnEndpoint");
+ name = new ObjectName("openejb.management:j2eeType=JAX-RS,J2EEServer=openejb,J2EEApplication=http_//127.0.0.1_" + port + "/app,EndpointType=Pojo,name=org.apache.openejb.server.cxf.rs.RsJMXTest$AnEndpoint");
}
@Test
@@ -58,7 +75,7 @@ public class RsJMXTest {
assertTrue(LocalMBeanServer.get().isRegistered(name));
final String wadlXml = String.class.cast(LocalMBeanServer.get().invoke(name, "getWadl", new Object[]{null}, new String[0]));
- assertThat(wadlXml, wadlXml, CoreMatchers.containsString("<resources base=\"http://127.0.0.1:4204/app/"));
+ assertThat(wadlXml, wadlXml, CoreMatchers.containsString("<resources base=\"http://127.0.0.1:" + port + "/app/"));
/* need a fix from cxf which will be shipped soon so deactivating it ATM
final String wadlJson = String.class.cast(LocalMBeanServer.get().invoke(name, "getWadl", new Object[]{"json"}, new String[0]));
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsWithInterfaceTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsWithInterfaceTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsWithInterfaceTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/RsWithInterfaceTest.java Thu Jul 17 09:22:44 2014
@@ -21,6 +21,9 @@ import org.apache.openejb.junit.Applicat
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -41,21 +44,30 @@ import static org.junit.Assert.assertEqu
@RunWith(ApplicationComposer.class)
public class RsWithInterfaceTest {
- @Module
- public static Class<?>[] service() throws Exception {
- return new Class<?>[]{RsImpl.class, App.class};
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
}
@Configuration
- public static Properties configuration() throws Exception {
- final Properties properties = new Properties();
- properties.setProperty(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true");
- return properties;
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
+ @Module
+ public static Class<?>[] service() throws Exception {
+ return new Class<?>[]{RsImpl.class, App.class};
}
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/RsWithInterfaceTest/itf/check"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/RsWithInterfaceTest/itf/check"));
assertEquals("true", response);
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationTest.java Thu Jul 17 09:22:44 2014
@@ -18,19 +18,35 @@ package org.apache.openejb.server.cxf.rs
import org.apache.cxf.jaxrs.client.ServerWebApplicationException;
import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
-import org.apache.openejb.server.cxf.rs.beans.*;
+import org.apache.openejb.server.cxf.rs.beans.HookedRest;
+import org.apache.openejb.server.cxf.rs.beans.MyExpertRestClass;
+import org.apache.openejb.server.cxf.rs.beans.MyFirstRestClass;
+import org.apache.openejb.server.cxf.rs.beans.MyRESTApplication;
+import org.apache.openejb.server.cxf.rs.beans.MySecondRestClass;
+import org.apache.openejb.server.cxf.rs.beans.RestWithInjections;
+import org.apache.openejb.server.cxf.rs.beans.SimpleEJB;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.core.Application;
import javax.ws.rs.core.Response;
-import java.io.*;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.StringWriter;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -38,7 +54,23 @@ import static org.junit.Assert.assertTru
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class SimpleApplicationTest {
- public static final String BASE_URL = "http://localhost:4204/foo/my-app";
+
+ private static int port = -1;
+ public static String BASE_URL = "undefined";
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ BASE_URL = "http://localhost:" + port + "/foo/my-app/";
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
@Module
@Classes(cdi = true, value = {MySecondRestClass.class, HookedRest.class, RestWithInjections.class, SimpleEJB.class, MyExpertRestClass.class, MyFirstRestClass.class})
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingTest.java Thu Jul 17 09:22:44 2014
@@ -18,6 +18,7 @@ package org.apache.openejb.server.cxf.rs
import org.apache.cxf.jaxrs.client.ServerWebApplicationException;
import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.server.cxf.rs.beans.HookedRest;
@@ -28,19 +29,40 @@ import org.apache.openejb.server.cxf.rs.
import org.apache.openejb.server.cxf.rs.beans.RestWithInjections;
import org.apache.openejb.server.cxf.rs.beans.SimpleEJB;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.ws.rs.core.Application;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class SimpleApplicationWithLongMappingTest {
- public static final String BASE_URL = "http://localhost:4204/foo/mapping/part2/my-app/";
+
+ private static int port = -1;
+ public static String BASE_URL = "undefined";
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ BASE_URL = "http://localhost:" + port + "/foo/mapping/part2/my-app/";
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
@Module
@Classes(cdi = true, value = {MySecondRestClass.class, HookedRest.class, RestWithInjections.class, SimpleEJB.class, MyExpertRestClass.class, MyFirstRestClass.class})
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingWithNoAppPathTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingWithNoAppPathTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingWithNoAppPathTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithLongMappingWithNoAppPathTest.java Thu Jul 17 09:22:44 2014
@@ -18,6 +18,7 @@ package org.apache.openejb.server.cxf.rs
import org.apache.cxf.jaxrs.client.ServerWebApplicationException;
import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.server.cxf.rs.beans.HookedRest;
@@ -28,19 +29,40 @@ import org.apache.openejb.server.cxf.rs.
import org.apache.openejb.server.cxf.rs.beans.RestWithInjections;
import org.apache.openejb.server.cxf.rs.beans.SimpleEJB;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.ws.rs.core.Application;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class SimpleApplicationWithLongMappingWithNoAppPathTest {
- public static final String BASE_URL = "http://localhost:4204/foo/mapping/part2/";
+
+ private static int port = -1;
+ public static String BASE_URL = "undefined";
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ BASE_URL = "http://localhost:" + port + "/foo/mapping/part2/";
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
@Module
@Classes(cdi = true, value = {MySecondRestClass.class, HookedRest.class, RestWithInjections.class, SimpleEJB.class, MyExpertRestClass.class, MyFirstRestClass.class})
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithMappingTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithMappingTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithMappingTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimpleApplicationWithMappingTest.java Thu Jul 17 09:22:44 2014
@@ -18,6 +18,7 @@ package org.apache.openejb.server.cxf.rs
import org.apache.cxf.jaxrs.client.ServerWebApplicationException;
import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.openejb.OpenEjbContainer;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.server.cxf.rs.beans.HookedRest;
@@ -28,19 +29,40 @@ import org.apache.openejb.server.cxf.rs.
import org.apache.openejb.server.cxf.rs.beans.RestWithInjections;
import org.apache.openejb.server.cxf.rs.beans.SimpleEJB;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.ws.rs.core.Application;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class SimpleApplicationWithMappingTest {
- public static final String BASE_URL = "http://localhost:4204/foo/mapping/my-app/";
+
+ private static int port = -1;
+ public static String BASE_URL = "undefined";
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ BASE_URL = "http://localhost:" + port + "/foo/mapping/my-app/";
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
@Module
@Classes(cdi = true, value = {MySecondRestClass.class, HookedRest.class, RestWithInjections.class, SimpleEJB.class, MyExpertRestClass.class, MyFirstRestClass.class})
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimplePojoTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimplePojoTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimplePojoTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SimplePojoTest.java Thu Jul 17 09:22:44 2014
@@ -22,12 +22,15 @@ import org.apache.openejb.assembler.clas
import org.apache.openejb.config.WebModule;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
+import org.apache.openejb.server.cxf.rs.beans.MyFirstRestClass;
import org.apache.openejb.testing.Classes;
import org.apache.openejb.testing.Component;
-import org.apache.openejb.server.cxf.rs.beans.MyFirstRestClass;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
import org.apache.openejb.web.LightweightWebAppBuilder;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -37,16 +40,25 @@ import static org.junit.Assert.assertEqu
@RunWith(ApplicationComposer.class)
public class SimplePojoTest {
- @Component
- public WebAppBuilder webAppBuilder() {
- return new LightweightWebAppBuilder();
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
}
@Configuration
- public Properties configuration() {
- final Properties properties = new Properties();
- properties.setProperty(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true");
- return properties;
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
+ @Component
+ public WebAppBuilder webAppBuilder() {
+ return new LightweightWebAppBuilder();
}
@Module
@@ -59,6 +71,6 @@ public class SimplePojoTest {
@Test
public void checkServiceWasDeployed() {
- assertEquals("Hi from REST World!", WebClient.create("http://localhost:4204/foo").path("/first/hi").get(String.class));
+ assertEquals("Hi from REST World!", WebClient.create("http://localhost:" + port + "/foo").path("/first/hi").get(String.class));
}
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SubResourceTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SubResourceTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SubResourceTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/SubResourceTest.java Thu Jul 17 09:22:44 2014
@@ -22,6 +22,9 @@ import org.apache.openejb.junit.Applicat
import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -36,21 +39,30 @@ import static org.junit.Assert.assertEqu
@RunWith(ApplicationComposer.class)
public class SubResourceTest {
- @Module
- public SingletonBean bean() {
- return (SingletonBean) new SingletonBean(Endpoint1.class).localBean();
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
}
@Configuration
- public static Properties configuration() throws Exception {
- final Properties properties = new Properties();
- properties.setProperty(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true");
- return properties;
+ public Properties props() {
+ return new PropertiesBuilder()
+ .p("httpejbd.port", Integer.toString(port))
+ .p(OpenEjbContainer.OPENEJB_EMBEDDED_REMOTABLE, "true")
+ .build();
+ }
+
+ @Module
+ public SingletonBean bean() {
+ return (SingletonBean) new SingletonBean(Endpoint1.class).localBean();
}
@Test
public void rest() throws IOException {
- final String response = IO.slurp(new URL("http://127.0.0.1:4204/SubResourceTest/sub1/sub2/value"));
+ final String response = IO.slurp(new URL("http://127.0.0.1:" + port + "/SubResourceTest/sub1/sub2/value"));
assertEquals("2", response);
}
Modified: tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/WebXmlSpecApplicationTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/WebXmlSpecApplicationTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/WebXmlSpecApplicationTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-rs/src/test/java/org/apache/openejb/server/cxf/rs/WebXmlSpecApplicationTest.java Thu Jul 17 09:22:44 2014
@@ -19,26 +19,39 @@ package org.apache.openejb.server.cxf.rs
import org.apache.cxf.jaxrs.client.WebClient;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
-import org.apache.openejb.server.cxf.rs.beans.MyFirstRestClass;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
-import javax.inject.Inject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Application;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
@EnableServices("jax-rs")
@RunWith(ApplicationComposer.class)
public class WebXmlSpecApplicationTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes(Resource.class)
public WebApp war() {
@@ -49,7 +62,7 @@ public class WebXmlSpecApplicationTest {
@Test
public void checkItIsDeployed() {
- assertEquals("r", WebClient.create("http://localhost:4204/foo/").path("/resources/r").get(String.class));
+ assertEquals("r", WebClient.create("http://localhost:" + port + "/foo/").path("/resources/r").get(String.class));
}
@Path("r")
Modified: tomee/tomee/trunk/server/openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/CxfContainerClassLoader.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/CxfContainerClassLoader.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/CxfContainerClassLoader.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf-transport/src/main/java/org/apache/openejb/server/cxf/transport/util/CxfContainerClassLoader.java Thu Jul 17 09:22:44 2014
@@ -63,7 +63,7 @@ public class CxfContainerClassLoader ext
@Override
protected Class<?> findClass(final String name) throws ClassNotFoundException {
if (name.startsWith(CXF_PACKAGE)) {
- Throwable th;
+ Throwable th = new ClassNotFoundException(name);
try {
return CONTAINER_LOADER.loadClass(name);
} catch (final Exception e) {
Modified: tomee/tomee/trunk/server/openejb-cxf/src/test/java/org/apache/openejb/server/cxf/CdiHandlersTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-cxf/src/test/java/org/apache/openejb/server/cxf/CdiHandlersTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-cxf/src/test/java/org/apache/openejb/server/cxf/CdiHandlersTest.java (original)
+++ tomee/tomee/trunk/server/openejb-cxf/src/test/java/org/apache/openejb/server/cxf/CdiHandlersTest.java Thu Jul 17 09:22:44 2014
@@ -16,28 +16,45 @@
*/
package org.apache.openejb.server.cxf;
-import static org.junit.Assert.assertTrue;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import javax.jws.HandlerChain;
-import javax.jws.WebService;
-import javax.xml.namespace.QName;
-import javax.xml.ws.Service;
-
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.server.cxf.handler.SimpleHandler;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
+import javax.jws.HandlerChain;
+import javax.jws.WebService;
+import javax.xml.namespace.QName;
+import javax.xml.ws.Service;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Properties;
+
+import static org.junit.Assert.assertTrue;
+
@EnableServices("jax-ws")
@RunWith(ApplicationComposer.class)
public class CdiHandlersTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes(value = {MyHandledWebservice.class, ACdiSimpleTaste.class, SimpleHandler.class}, cdi = true)
public WebApp module() {
@@ -47,7 +64,7 @@ public class CdiHandlersTest {
@Test
public void checkHandlersAreCDIBeans() throws MalformedURLException {
SimpleHandler.reset();
- Service.create(new URL("http://localhost:4204/test/ws?wsdl"),
+ Service.create(new URL("http://localhost:" + port + "/test/ws?wsdl"),
new QName("http://cxf.server.openejb.apache.org/", "MyHandledWebserviceService"))
.getPort(MyHandledWsApi.class).test();
assertTrue(SimpleHandler.close);
Modified: tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiByConfigTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiByConfigTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiByConfigTest.java (original)
+++ tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiByConfigTest.java Thu Jul 17 09:22:44 2014
@@ -25,6 +25,8 @@ import org.apache.openejb.testing.Config
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -39,6 +41,14 @@ import static org.junit.Assert.assertTha
@EnableServices({"hessian", "httpejbd"})
@RunWith(ApplicationComposer.class)
public class HessianCdiByConfigTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
@Module
@Classes(cdi = true, value = MyCdiHessianService.class)
public WebApp webApp() {
@@ -47,7 +57,8 @@ public class HessianCdiByConfigTest {
@Configuration
public Properties config() {
- return new PropertiesBuilder().p("openejb.hessian." + MyCdiHessianService.class.getName() + "_" + CdiService.class.getName() + ".path", "foo").build();
+ return new PropertiesBuilder().p("openejb.hessian." + MyCdiHessianService.class.getName() + "_" + CdiService.class.getName() + ".path", "foo")
+ .p("httpejbd.port", Integer.toString(port)).build();
}
@Test
@@ -57,7 +68,7 @@ public class HessianCdiByConfigTest {
final SerializerFactory factory = new SerializerFactory(loader);
factory.setAllowNonSerializable(true);
clientFactory.setSerializerFactory(factory);
- final CdiService client = CdiService.class.cast(clientFactory.create(CdiService.class, "http://127.0.0.1:4204/web/hessian/foo"));
+ final CdiService client = CdiService.class.cast(clientFactory.create(CdiService.class, "http://127.0.0.1:" + port + "/web/hessian/foo"));
final Out out = client.call(new In("test"));
assertThat(out, instanceOf(Out.class));
Modified: tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiTest.java (original)
+++ tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianCdiTest.java Thu Jul 17 09:22:44 2014
@@ -22,15 +22,19 @@ import org.apache.openejb.cdi.api.Hessia
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
-import java.beans.Beans;
import java.net.MalformedURLException;
+import java.util.Properties;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertEquals;
@@ -40,6 +44,19 @@ import static org.junit.Assert.assertTha
@EnableServices({"hessian", "httpejbd"})
@RunWith(ApplicationComposer.class)
public class HessianCdiTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes(cdi = true, value = {MyCdiHessianService.class, CdiBean.class})
public WebApp webApp() {
@@ -53,7 +70,7 @@ public class HessianCdiTest {
final SerializerFactory factory = new SerializerFactory(loader);
factory.setAllowNonSerializable(true);
clientFactory.setSerializerFactory(factory);
- final CdiService client = CdiService.class.cast(clientFactory.create(CdiService.class, "http://127.0.0.1:4204/web/hessian/service"));
+ final CdiService client = CdiService.class.cast(clientFactory.create(CdiService.class, "http://127.0.0.1:" + port + "/web/hessian/service"));
final Out out = client.call(new In("test"));
assertThat(out, instanceOf(Out.class));
Modified: tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianInitialContextTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianInitialContextTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianInitialContextTest.java (original)
+++ tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianInitialContextTest.java Thu Jul 17 09:22:44 2014
@@ -18,9 +18,12 @@ package org.apache.openejb.server.hessia
import org.apache.openejb.client.hessian.HessianInitialContextFactory;
import org.apache.openejb.junit.ApplicationComposer;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -28,6 +31,7 @@ import javax.ejb.Remote;
import javax.ejb.Singleton;
import javax.naming.Context;
import javax.naming.InitialContext;
+import java.util.Properties;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertEquals;
@@ -36,6 +40,19 @@ import static org.junit.Assert.assertTha
@EnableServices({"hessian", "httpejbd"})
@RunWith(ApplicationComposer.class)
public class HessianInitialContextTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
public Class<?>[] classes() {
return new Class<?>[]{Server.class};
@@ -46,7 +63,7 @@ public class HessianInitialContextTest {
final MyApi client = MyApi.class.cast(
new InitialContext(new PropertiesBuilder()
.p(Context.INITIAL_CONTEXT_FACTORY, HessianInitialContextFactory.class.getName())
- .p(Context.PROVIDER_URL, "http://127.0.0.1:4204/HessianInitialContextTest/hessian/")
+ .p(Context.PROVIDER_URL, "http://127.0.0.1:" + port + "/HessianInitialContextTest/hessian/")
.build())
.lookup("Server"));
Modified: tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianServiceTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianServiceTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianServiceTest.java (original)
+++ tomee/tomee/trunk/server/openejb-hessian/src/test/java/org/apache/openejb/server/hessian/HessianServiceTest.java Thu Jul 17 09:22:44 2014
@@ -19,14 +19,19 @@ package org.apache.openejb.server.hessia
import com.caucho.hessian.client.HessianProxyFactory;
import com.caucho.hessian.io.SerializerFactory;
import org.apache.openejb.junit.ApplicationComposer;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import javax.ejb.Remote;
import javax.ejb.Singleton;
import java.net.MalformedURLException;
+import java.util.Properties;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertEquals;
@@ -35,6 +40,19 @@ import static org.junit.Assert.assertTha
@EnableServices({"hessian", "httpejbd"})
@RunWith(ApplicationComposer.class)
public class HessianServiceTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
public Class<?>[] classes() {
return new Class<?>[]{MyHessianWebService.class};
@@ -47,7 +65,7 @@ public class HessianServiceTest {
final SerializerFactory factory = new SerializerFactory(loader);
factory.setAllowNonSerializable(true);
clientFactory.setSerializerFactory(factory);
- final HessianWebService client = HessianWebService.class.cast(clientFactory.create(HessianWebService.class, "http://127.0.0.1:4204/HessianServiceTest/hessian/" + MyHessianWebService.class.getSimpleName()));
+ final HessianWebService client = HessianWebService.class.cast(clientFactory.create(HessianWebService.class, "http://127.0.0.1:" + port + "/HessianServiceTest/hessian/" + MyHessianWebService.class.getSimpleName()));
final Out out = client.call(new In("test"));
assertThat(out, instanceOf(Out.class));
Modified: tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/FilterRegistrationTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/FilterRegistrationTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/FilterRegistrationTest.java (original)
+++ tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/FilterRegistrationTest.java Thu Jul 17 09:22:44 2014
@@ -18,10 +18,13 @@ package org.apache.openejb.server.httpd;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
-import org.apache.openejb.junit.Classes;
-import org.apache.openejb.junit.EnableServices;
-import org.apache.openejb.junit.Module;
import org.apache.openejb.loader.IO;
+import org.apache.openejb.testing.Configuration;
+import org.apache.openejb.testing.EnableServices;
+import org.apache.openejb.testing.Module;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -38,6 +41,7 @@ import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -45,6 +49,19 @@ import static org.junit.Assert.assertTru
@EnableServices({"httpejbd"})
@RunWith(ApplicationComposer.class)
public class FilterRegistrationTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
public WebApp app() {
return new WebApp()
@@ -56,7 +73,7 @@ public class FilterRegistrationTest {
@Test
public void touch() throws IOException {
- assertEquals("/filter/touch", IO.slurp(new URL("http://localhost:4204/filter/touch")));
+ assertEquals("/filter/touch", IO.slurp(new URL("http://localhost:" + port + "/filter/touch")));
assertTrue(TestFilter.init);
assertTrue(TestFilter.ok);
assertTrue(TestFilter2.ok);
Modified: tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/ServletRegistrationTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/ServletRegistrationTest.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/ServletRegistrationTest.java (original)
+++ tomee/tomee/trunk/server/openejb-http/src/test/java/org/apache/openejb/server/httpd/ServletRegistrationTest.java Thu Jul 17 09:22:44 2014
@@ -18,10 +18,14 @@ package org.apache.openejb.server.httpd;
import org.apache.openejb.jee.WebApp;
import org.apache.openejb.junit.ApplicationComposer;
-import org.apache.openejb.loader.IO;
import org.apache.openejb.testing.Classes;
+import org.apache.openejb.testing.Configuration;
import org.apache.openejb.testing.EnableServices;
import org.apache.openejb.testing.Module;
+import org.apache.openejb.loader.IO;
+import org.apache.openejb.testng.PropertiesBuilder;
+import org.apache.openejb.util.NetworkUtil;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -34,12 +38,26 @@ import javax.servlet.http.HttpServletReq
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URL;
+import java.util.Properties;
import static org.junit.Assert.assertEquals;
@EnableServices("httpejbd")
@RunWith(ApplicationComposer.class)
public class ServletRegistrationTest {
+
+ private static int port = -1;
+
+ @BeforeClass
+ public static void beforeClass() {
+ port = NetworkUtil.getNextAvailablePort();
+ }
+
+ @Configuration
+ public Properties props() {
+ return new PropertiesBuilder().p("httpejbd.port", Integer.toString(port)).build();
+ }
+
@Module
@Classes({TestServlet.class, TestServlet2.class, TestServlet3.class, TestServlet4.class, SomeEjb.class})
public WebApp app() {
@@ -50,22 +68,22 @@ public class ServletRegistrationTest {
@Test
public void touch() throws IOException {
- assertEquals("touched", IO.slurp(new URL("http://localhost:4204/servlet/touch")));
+ assertEquals("touched", IO.slurp(new URL("http://localhost:" + port + "/servlet/touch")));
}
@Test
public void discover() throws IOException {
- assertEquals("discovered", IO.slurp(new URL("http://localhost:4204/servlet/discover")));
+ assertEquals("discovered", IO.slurp(new URL("http://localhost:" + port + "/servlet/discover")));
}
@Test
public void wildcard() throws IOException {
- assertEquals("wildcard", IO.slurp(new URL("http://localhost:4204/servlet/bar/openejb")));
+ assertEquals("wildcard", IO.slurp(new URL("http://localhost:" + port + "/servlet/bar/openejb")));
}
@Test
public void injections() throws IOException {
- assertEquals("true", IO.slurp(new URL("http://localhost:4204/servlet/injection")));
+ assertEquals("true", IO.slurp(new URL("http://localhost:" + port + "/servlet/injection")));
}
private static class TestServlet extends HttpServlet {
Modified: tomee/tomee/trunk/server/openejb-server/src/main/java/org/apache/openejb/server/ServiceDaemon.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-server/src/main/java/org/apache/openejb/server/ServiceDaemon.java?rev=1611306&r1=1611305&r2=1611306&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-server/src/main/java/org/apache/openejb/server/ServiceDaemon.java (original)
+++ tomee/tomee/trunk/server/openejb-server/src/main/java/org/apache/openejb/server/ServiceDaemon.java Thu Jul 17 09:22:44 2014
@@ -29,6 +29,7 @@ import javax.net.ssl.SSLServerSocketFact
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.net.BindException;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
@@ -149,7 +150,15 @@ public class ServiceDaemon implements Se
} else {
serverSocket = new ServerSocket();
serverSocket.setReuseAddress(true);
+
+ try {
serverSocket.bind(new InetSocketAddress(this.inetAddress, this.port), this.backlog);
+
+ } catch (final BindException e) {
+ //One retry - Port may be closing
+ Thread.sleep(1000);
+ serverSocket.bind(new InetSocketAddress(this.inetAddress, this.port), this.backlog);
+ }
}
serverSocket.setSoTimeout(this.timeout);