Repository: camel
Updated Branches:
  refs/heads/master 56ddf955f -> 39174b7e7


Fix memory leak in undertow producer


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/62352740
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/62352740
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/62352740

Branch: refs/heads/master
Commit: 6235274060324d405a6d4f9b3542ca7a4a31689a
Parents: 56ddf95
Author: James Netherton <jamesnether...@gmail.com>
Authored: Tue Nov 17 16:06:02 2015 +0000
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Wed Nov 18 14:45:14 2015 +0100

----------------------------------------------------------------------
 .../undertow/DefaultUndertowHttpBinding.java    | 83 ++++++++++----------
 .../component/undertow/UndertowProducer.java    | 20 ++---
 .../undertow/UndertowProducerTest.java          |  1 -
 .../undertow/rest/RestApiUndertowTest.java      |  2 -
 ...UndertowHttpBindingModeAutoWithJsonTest.java |  2 +-
 ...tUndertowHttpBindingModeAutoWithXmlTest.java |  2 +-
 .../RestUndertowHttpBindingModeJsonTest.java    |  2 +-
 .../RestUndertowHttpBindingModeXmlTest.java     |  2 +-
 .../rest/RestUndertowHttpPojoInOutTest.java     |  4 +-
 .../RestUndertowHttpPostJsonJaxbPojoTest.java   |  2 +-
 .../RestUndertowHttpPostJsonPojoListTest.java   |  2 +-
 .../rest/RestUndertowHttpPostJsonPojoTest.java  |  2 +-
 .../RestUndertowHttpPostXmlJaxbPojoTest.java    |  2 +-
 13 files changed, 63 insertions(+), 63 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/DefaultUndertowHttpBinding.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/DefaultUndertowHttpBinding.java
 
b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/DefaultUndertowHttpBinding.java
index 481d29a..f3310e1 100644
--- 
a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/DefaultUndertowHttpBinding.java
+++ 
b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/DefaultUndertowHttpBinding.java
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.component.undertow;
 
+import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
@@ -28,14 +29,13 @@ import java.util.Map;
 import io.undertow.client.ClientExchange;
 import io.undertow.client.ClientRequest;
 import io.undertow.client.ClientResponse;
-import io.undertow.connector.ByteBufferPool;
-import io.undertow.connector.PooledByteBuffer;
 import io.undertow.predicate.Predicate;
 import io.undertow.server.HttpServerExchange;
 import io.undertow.util.Headers;
 import io.undertow.util.HttpString;
 import io.undertow.util.Methods;
 import io.undertow.util.MimeMappings;
+
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.TypeConverter;
@@ -46,6 +46,8 @@ import org.apache.camel.util.MessageHelper;
 import org.apache.camel.util.ObjectHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.xnio.ChannelListener;
+import org.xnio.channels.StreamSourceChannel;
 
 /**
  * DefaultUndertowHttpBinding represent binding used by default, if user 
doesn't provide any.
@@ -83,8 +85,7 @@ public class DefaultUndertowHttpBinding implements 
UndertowHttpBinding {
         //extract body if the method is allowed to have one
         //body is extracted as byte[] then auto TypeConverter kicks in
         if (Methods.POST.equals(httpExchange.getRequestMethod()) || 
Methods.PUT.equals(httpExchange.getRequestMethod())) {
-            byte[] bytes = readRequestBody(httpExchange);
-            result.setBody(bytes);
+            result.setBody(readFromChannel(httpExchange.getRequestChannel()));
         } else {
             result.setBody(null);
         }
@@ -99,7 +100,7 @@ public class DefaultUndertowHttpBinding implements 
UndertowHttpBinding {
         //retrieve response headers
         populateCamelHeaders(clientExchange.getResponse(), 
result.getHeaders(), exchange);
 
-        result.setBody(readResponseBody(clientExchange));
+        result.setBody(readFromChannel(clientExchange.getResponseChannel()));
 
         return result;
     }
@@ -322,40 +323,42 @@ public class DefaultUndertowHttpBinding implements 
UndertowHttpBinding {
         return body;
     }
 
-    private byte[] readRequestBody(HttpServerExchange httpExchange) throws 
IOException {
-        ByteBufferPool bufferPool = 
httpExchange.getConnection().getByteBufferPool();
-        PooledByteBuffer pooledByteBuffer = bufferPool.allocate();
-        ByteBuffer byteBuffer = pooledByteBuffer.getBuffer();
-
-        byteBuffer.clear();
-
-        httpExchange.getRequestChannel().read(byteBuffer);
-        int pos = byteBuffer.position();
-        byteBuffer.rewind();
-        byte[] bytes = new byte[pos];
-        byteBuffer.get(bytes);
-
-        byteBuffer.clear();
-        pooledByteBuffer.close();
-        return bytes;
-    }
-
-    private byte[] readResponseBody(ClientExchange httpExchange) throws 
IOException {
-        ByteBufferPool bufferPool = 
httpExchange.getConnection().getBufferPool();
-        PooledByteBuffer pooledByteBuffer = bufferPool.allocate();
-        ByteBuffer byteBuffer = pooledByteBuffer.getBuffer();
-
-        byteBuffer.clear();
-
-        httpExchange.getResponseChannel().read(byteBuffer);
-        int pos = byteBuffer.position();
-        byteBuffer.rewind();
-        byte[] bytes = new byte[pos];
-        byteBuffer.get(bytes);
-
-        byteBuffer.clear();
-        pooledByteBuffer.close();
-        return bytes;
+    private byte[] readFromChannel(StreamSourceChannel source) throws 
IOException {
+        final ByteArrayOutputStream out = new ByteArrayOutputStream();
+        final ByteBuffer buffer = ByteBuffer.wrap(new byte[1024]);
+
+        for (; ; ) {
+            int res = source.read(buffer);
+            if (res == -1) {
+                return out.toByteArray();
+            } else if (res == 0) {
+                source.getReadSetter().set(new 
ChannelListener<StreamSourceChannel>() {
+                    @Override
+                    public void handleEvent(StreamSourceChannel channel) {
+                        for (; ; ) {
+                            try {
+                                int res = channel.read(buffer);
+                                if (res == -1 || res == 0) {
+                                    out.toByteArray();
+                                    return;
+                                } else {
+                                    buffer.flip();
+                                    out.write(buffer.array(), 
buffer.arrayOffset() + buffer.position(), buffer.arrayOffset() + 
buffer.limit());
+                                    buffer.clear();
+                                }
+                            } catch (IOException e) {
+                                LOG.error("Exception reading from channel {}", 
e);
+                            }
+                        }
+                    }
+                });
+                source.resumeReads();
+                return out.toByteArray();
+            } else {
+                buffer.flip();
+                out.write(buffer.array(), buffer.arrayOffset() + 
buffer.position(), buffer.arrayOffset() + buffer.limit());
+                buffer.clear();
+            }
+        }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowProducer.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowProducer.java
 
b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowProducer.java
index 8e13e52..641cdbd 100644
--- 
a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowProducer.java
+++ 
b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowProducer.java
@@ -16,19 +16,20 @@
  */
 package org.apache.camel.component.undertow;
 
-import java.io.IOException;
-import java.net.URI;
-import java.nio.ByteBuffer;
-
 import io.undertow.client.ClientCallback;
 import io.undertow.client.ClientConnection;
 import io.undertow.client.ClientExchange;
 import io.undertow.client.ClientRequest;
 import io.undertow.client.UndertowClient;
-import io.undertow.server.XnioByteBufferPool;
+import io.undertow.server.DefaultByteBufferPool;
 import io.undertow.util.Headers;
 import io.undertow.util.HttpString;
 import io.undertow.util.Protocols;
+
+import java.io.IOException;
+import java.net.URI;
+import java.nio.ByteBuffer;
+
 import org.apache.camel.AsyncCallback;
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
@@ -38,8 +39,6 @@ import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.IOHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.xnio.BufferAllocator;
-import org.xnio.ByteBufferSlicePool;
 import org.xnio.IoFuture;
 import org.xnio.OptionMap;
 import org.xnio.Xnio;
@@ -56,7 +55,7 @@ public class UndertowProducer extends DefaultAsyncProducer {
     private static final Logger LOG = 
LoggerFactory.getLogger(UndertowProducer.class);
     private UndertowEndpoint endpoint;
     private XnioWorker worker;
-    private ByteBufferSlicePool pool;
+    private DefaultByteBufferPool pool;
     private OptionMap options;
 
     public UndertowProducer(UndertowEndpoint endpoint, OptionMap options) {
@@ -77,7 +76,7 @@ public class UndertowProducer extends DefaultAsyncProducer {
         try {
             final UndertowClient client = UndertowClient.getInstance();
 
-            IoFuture<ClientConnection> connect = 
client.connect(endpoint.getHttpURI(), worker, new XnioByteBufferPool(pool), 
options);
+            IoFuture<ClientConnection> connect = 
client.connect(endpoint.getHttpURI(), worker, pool, options);
 
             // creating the url to use takes 2-steps
             String url = UndertowHelper.createURL(exchange, getEndpoint());
@@ -127,7 +126,8 @@ public class UndertowProducer extends DefaultAsyncProducer {
     protected void doStart() throws Exception {
         super.doStart();
 
-        pool = new 
ByteBufferSlicePool(BufferAllocator.DIRECT_BYTE_BUFFER_ALLOCATOR, 8192, 8192 * 
8192);
+        pool = new DefaultByteBufferPool(true, 8192);
+
         worker = Xnio.getInstance().createWorker(options);
 
         LOG.debug("Created worker: {} with options: {}", worker, options);

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowProducerTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowProducerTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowProducerTest.java
index 03059ef..ed6f2a4 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowProducerTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowProducerTest.java
@@ -66,7 +66,6 @@ public class UndertowProducerTest extends BaseUndertowTest {
 
     @Test
     public void testHttpSimpleHeaderAndBody() throws Exception {
-
         getMockEndpoint("mock:input").expectedBodiesReceived("Hello World");
         
getMockEndpoint("mock:input").expectedHeaderReceived(Exchange.HTTP_METHOD, 
"POST");
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestApiUndertowTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestApiUndertowTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestApiUndertowTest.java
index 946c0b5..beece9e 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestApiUndertowTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestApiUndertowTest.java
@@ -32,8 +32,6 @@ public class RestApiUndertowTest extends BaseUndertowTest {
     public void testApi() throws Exception {
         String out = 
template.requestBody("undertow:http://localhost:{{port}}/api-doc";, null, 
String.class);
         assertNotNull(out);
-        log.info(out);
-
         assertTrue(out.contains("\"version\" : \"1.2.3\""));
         assertTrue(out.contains("\"title\" : \"The hello rest thing\""));
         assertTrue(out.contains("\"/hello/bye/{name}\""));

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithJsonTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithJsonTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithJsonTest.java
index dd03f09..e5fcd37 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithJsonTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithJsonTest.java
@@ -31,7 +31,7 @@ public class RestUndertowHttpBindingModeAutoWithJsonTest 
extends BaseUndertowTes
         mock.message(0).body().isInstanceOf(UserPojo.class);
 
         String body = "{\"id\": 123, \"name\": \"Donald Duck\"}";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithXmlTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithXmlTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithXmlTest.java
index 528ca4b..b94f25a 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithXmlTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeAutoWithXmlTest.java
@@ -31,7 +31,7 @@ public class RestUndertowHttpBindingModeAutoWithXmlTest 
extends BaseUndertowTest
         mock.message(0).body().isInstanceOf(UserJaxbPojo.class);
 
         String body = "<user name=\"Donald Duck\" id=\"123\"></user>";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeJsonTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeJsonTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeJsonTest.java
index d28b45e..100afee 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeJsonTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeJsonTest.java
@@ -32,7 +32,7 @@ public class RestUndertowHttpBindingModeJsonTest extends 
BaseUndertowTest {
         mock.message(0).body().isInstanceOf(UserJaxbPojo.class);
 
         String body = "{\"id\": 123, \"name\": \"Donald Duck\"}";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeXmlTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeXmlTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeXmlTest.java
index 33cb016..f9baba4 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeXmlTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpBindingModeXmlTest.java
@@ -31,7 +31,7 @@ public class RestUndertowHttpBindingModeXmlTest extends 
BaseUndertowTest {
         mock.message(0).body().isInstanceOf(UserJaxbPojo.class);
 
         String body = "<user name=\"Donald Duck\" id=\"123\"></user>";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPojoInOutTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPojoInOutTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPojoInOutTest.java
index efc9a34..68ccc8c 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPojoInOutTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPojoInOutTest.java
@@ -26,7 +26,7 @@ public class RestUndertowHttpPojoInOutTest extends 
BaseUndertowTest {
     @Test
     public void testUndertowPojoInOut() throws Exception {
         String body = "{\"id\": 123, \"name\": \"Donald Duck\"}";
-        String out = template.requestBody("undertow:http://localhost:"; + 
getPort() + "/users/lives", body, String.class);
+        String out = 
template.requestBody("undertow:http://localhost:{{port}}/users/lives";, body, 
String.class);
 
         assertNotNull(out);
         assertEquals("{\"iso\":\"EN\",\"country\":\"England\"}", out);
@@ -34,7 +34,7 @@ public class RestUndertowHttpPojoInOutTest extends 
BaseUndertowTest {
     
     @Test
     public void testUndertowGetRequest() throws Exception {
-        String out = template.requestBody("undertow:http://localhost:"; + 
getPort() + "/users/lives", null, String.class);
+        String out = 
template.requestBody("undertow:http://localhost:{{port}}/users/lives";, null, 
String.class);
 
         assertNotNull(out);
         assertEquals("{\"iso\":\"EN\",\"country\":\"England\"}", out);

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonJaxbPojoTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonJaxbPojoTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonJaxbPojoTest.java
index 0d7d2ab..375acad 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonJaxbPojoTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonJaxbPojoTest.java
@@ -31,7 +31,7 @@ public class RestUndertowHttpPostJsonJaxbPojoTest extends 
BaseUndertowTest {
         mock.message(0).body().isInstanceOf(UserJaxbPojo.class);
 
         String body = "{\"id\": 123, \"name\": \"Donald Duck\"}";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoListTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoListTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoListTest.java
index 8a42dd1..27a5a2c 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoListTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoListTest.java
@@ -32,7 +32,7 @@ public class RestUndertowHttpPostJsonPojoListTest extends 
BaseUndertowTest {
         mock.expectedMessageCount(1);
 
         String body = "[ {\"id\": 123, \"name\": \"Donald Duck\"}, {\"id\": 
456, \"name\": \"John Doe\"} ]";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoTest.java
index 10b7b43..02370d6 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostJsonPojoTest.java
@@ -31,7 +31,7 @@ public class RestUndertowHttpPostJsonPojoTest extends 
BaseUndertowTest {
         mock.message(0).body().isInstanceOf(UserPojo.class);
 
         String body = "{\"id\": 123, \"name\": \"Donald Duck\"}";
-        template.sendBody("undertow:http://localhost:"; + getPort() + 
"/users/new", body);
+        template.sendBody("undertow:http://localhost:{{port}}/users/new";, 
body);
 
         assertMockEndpointsSatisfied();
 

http://git-wip-us.apache.org/repos/asf/camel/blob/62352740/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostXmlJaxbPojoTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostXmlJaxbPojoTest.java
 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostXmlJaxbPojoTest.java
index 1b15bf0..b4d0e44 100644
--- 
a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostXmlJaxbPojoTest.java
+++ 
b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/rest/RestUndertowHttpPostXmlJaxbPojoTest.java
@@ -32,7 +32,7 @@ public class RestUndertowHttpPostXmlJaxbPojoTest extends 
BaseUndertowTest {
         mock.message(0).body().isInstanceOf(UserJaxbPojo.class);
 
         String body = "<user name=\"Donald Duck\" id=\"123\"></user>";
-        template.sendBodyAndHeader("undertow:http://localhost:"; + getPort() + 
"/users/new", body, Exchange.CONTENT_TYPE, "text/xml");
+        
template.sendBodyAndHeader("undertow:http://localhost:{{port}}/users/new";, 
body, Exchange.CONTENT_TYPE, "text/xml");
 
         assertMockEndpointsSatisfied();
 

Reply via email to