This is an automated email from the ASF dual-hosted git repository.

fmariani pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new f663d9cb1125 camel-as2 tests - Use a random port to avoid conflicting 
address issues
f663d9cb1125 is described below

commit f663d9cb11259f2fbac72683f572dbe0f7e997e6
Author: Croway <[email protected]>
AuthorDate: Thu Feb 12 11:26:39 2026 +0100

    camel-as2 tests - Use a random port to avoid conflicting address issues
---
 .../camel/component/as2/api/AS2AsynchronousMDNManager.java       | 3 +--
 .../org/apache/camel/component/as2/api/AS2ClientConnection.java  | 4 +---
 .../apache/camel/component/as2/AS2AsyncMDNServerManagerIT.java   | 7 ++++++-
 .../camel/component/as2/AS2AsyncMdnBasicAuthHeaderTest.java      | 8 +++++++-
 .../camel/component/as2/AS2AsyncMdnTokenAuthHeaderTest.java      | 8 +++++++-
 .../org/apache/camel/component/as2/AS2BasicAuthHeaderTest.java   | 9 ++++++++-
 .../java/org/apache/camel/component/as2/AS2ClientManagerIT.java  | 7 ++++++-
 .../apache/camel/component/as2/AS2ServerBasicAuthHeaderTest.java | 8 +++++++-
 .../camel/component/as2/AS2ServerBearerAuthHeaderTest.java       | 8 +++++++-
 .../org/apache/camel/component/as2/AS2ServerManagerITBase.java   | 8 +++++++-
 .../org/apache/camel/component/as2/AS2ServerSecTestBase.java     | 8 +++++++-
 .../org/apache/camel/component/as2/AS2TokenAuthHeaderTest.java   | 9 ++++++++-
 .../org/apache/camel/component/as2/AbstractAS2ITSupport.java     | 5 +++++
 13 files changed, 77 insertions(+), 15 deletions(-)

diff --git 
a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2AsynchronousMDNManager.java
 
b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2AsynchronousMDNManager.java
index 75a1b76113ab..3a922227d4ac 100644
--- 
a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2AsynchronousMDNManager.java
+++ 
b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2AsynchronousMDNManager.java
@@ -44,7 +44,6 @@ import org.apache.hc.core5.http.protocol.HttpProcessorBuilder;
 import org.apache.hc.core5.http.protocol.RequestConnControl;
 import org.apache.hc.core5.http.protocol.RequestContent;
 import org.apache.hc.core5.http.protocol.RequestDate;
-import org.apache.hc.core5.http.protocol.RequestExpectContinue;
 import org.apache.hc.core5.http.protocol.RequestTargetHost;
 import org.apache.hc.core5.http.protocol.RequestUserAgent;
 
@@ -111,7 +110,7 @@ public class AS2AsynchronousMDNManager {
         // Build Processor
         httpProcessor = HttpProcessorBuilder.create().add(new 
RequestAsynchronousMDN(as2Version, senderFQDN))
                 .add(new RequestTargetHost()).add(new 
RequestUserAgent(userAgent)).add(new RequestDate())
-                .add(new RequestContent(true)).add(new 
RequestConnControl()).add(new RequestExpectContinue())
+                .add(new RequestContent(true)).add(new RequestConnControl())
                 .build();
     }
 
diff --git 
a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2ClientConnection.java
 
b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2ClientConnection.java
index e1392c58fb00..ad7ae98fd28f 100644
--- 
a/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2ClientConnection.java
+++ 
b/components/camel-as2/camel-as2-api/src/main/java/org/apache/camel/component/as2/api/AS2ClientConnection.java
@@ -64,7 +64,6 @@ import org.apache.hc.core5.http.protocol.HttpProcessorBuilder;
 import org.apache.hc.core5.http.protocol.RequestConnControl;
 import org.apache.hc.core5.http.protocol.RequestContent;
 import org.apache.hc.core5.http.protocol.RequestDate;
-import org.apache.hc.core5.http.protocol.RequestExpectContinue;
 import org.apache.hc.core5.http.protocol.RequestTargetHost;
 import org.apache.hc.core5.http.protocol.RequestUserAgent;
 import org.apache.hc.core5.net.URIAuthority;
@@ -109,8 +108,7 @@ public class AS2ClientConnection {
                 .add(new RequestUserAgent(this.userAgent))
                 .add(new RequestDate())
                 .add(new RequestContent(true))
-                .add(new RequestConnControl())
-                .add(new RequestExpectContinue()).build();
+                .add(new RequestConnControl()).build();
 
         final Http1Config h1Config = Http1Config.custom().setBufferSize(8 * 
1024).build();
 
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMDNServerManagerIT.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMDNServerManagerIT.java
index bb3c85a061f1..3b7229a71ee2 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMDNServerManagerIT.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMDNServerManagerIT.java
@@ -110,7 +110,7 @@ public class AS2AsyncMDNServerManagerIT extends 
AbstractAS2ITSupport {
             """;
 
     private static final String EDI_MESSAGE_CONTENT_TRANSFER_ENCODING = "7bit";
-    private static final int PARTNER_TARGET_PORT = 8889;
+    private static final int PARTNER_TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
 
     private static final int RECEIPT_SERVER_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int RECEIPT_SERVER_PORT2 = 
AvailablePortFinder.getNextAvailable();
@@ -138,6 +138,11 @@ public class AS2AsyncMDNServerManagerIT extends 
AbstractAS2ITSupport {
         }
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(PARTNER_TARGET_PORT);
+    }
+
     // Verify the MDN is receipt returned asynchronously from the server when 
the request headers includes the
     // 'Receipt-Delivery-Option' header specifying the return-URL.
     @Test
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnBasicAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnBasicAuthHeaderTest.java
index 057395951feb..28311799b012 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnBasicAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnBasicAuthHeaderTest.java
@@ -53,6 +53,7 @@ public class AS2AsyncMdnBasicAuthHeaderTest extends 
AbstractAS2ITSupport {
     private static final String MDN_USER_NAME = "camel";
     private static final String MDN_PASSWORD = "rider";
     private static final String MDN_ACCESS_TOKEN = 
"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3";
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int RECEIPT_SERVER_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int JETTY_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String EDI_MESSAGE = """
@@ -181,11 +182,16 @@ public class AS2AsyncMdnBasicAuthHeaderTest extends 
AbstractAS2ITSupport {
         };
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(TARGET_PORT);
+    }
+
     // AS2 server adds Authorization header to MDN returned asynchronously
     private static void receiveTestMessages() throws IOException {
         serverConnection = new AS2ServerConnection(
                 "1.1", "AS2ClientManagerIntegrationTest Server",
-                "server.example.com", 8889, 
AS2SignatureAlgorithm.SHA256WITHRSA,
+                "server.example.com", TARGET_PORT, 
AS2SignatureAlgorithm.SHA256WITHRSA,
                 null, null, null,
                 "TBD", null, null,
                 // server authorization config
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnTokenAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnTokenAuthHeaderTest.java
index ad20e9cc8e53..152aef0bd191 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnTokenAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2AsyncMdnTokenAuthHeaderTest.java
@@ -43,6 +43,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 public class AS2AsyncMdnTokenAuthHeaderTest extends AbstractAS2ITSupport {
 
     private static final String MDN_ACCESS_TOKEN = 
"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3";
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int RECEIPT_SERVER_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String EDI_MESSAGE = """
             UNB+UNOA:1+005435656:1+006415160:1+060515:1434+00000000000778'
@@ -133,11 +134,16 @@ public class AS2AsyncMdnTokenAuthHeaderTest extends 
AbstractAS2ITSupport {
         };
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(TARGET_PORT);
+    }
+
     // AS2 server adds Authorization header to MDN returned asynchronously
     private static void receiveTestMessages() throws IOException {
         serverConnection = new AS2ServerConnection(
                 "1.1", "AS2ClientManagerIntegrationTest Server",
-                "server.example.com", 8889, 
AS2SignatureAlgorithm.SHA256WITHRSA,
+                "server.example.com", TARGET_PORT, 
AS2SignatureAlgorithm.SHA256WITHRSA,
                 null, null, null,
                 "TBD", null, null,
                 // server authorization config
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2BasicAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2BasicAuthHeaderTest.java
index a3075d8682ff..fa75386921fc 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2BasicAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2BasicAuthHeaderTest.java
@@ -27,6 +27,7 @@ import org.apache.camel.component.as2.api.*;
 import org.apache.camel.component.as2.api.entity.ApplicationEntity;
 import 
org.apache.camel.component.as2.api.entity.DispositionNotificationMultipartReportEntity;
 import org.apache.camel.component.as2.api.entity.MimeEntity;
+import org.apache.camel.test.AvailablePortFinder;
 import org.apache.hc.core5.http.ClassicHttpRequest;
 import org.apache.hc.core5.http.ContentType;
 import org.apache.hc.core5.http.HttpEntity;
@@ -44,6 +45,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
  */
 public class AS2BasicAuthHeaderTest extends AbstractAS2ITSupport {
 
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     // Basic Auth takes precedence when auth token also provided
     private static final String USER_NAME = "camel";
     private static final String PASSWORD = "rider";
@@ -189,10 +191,15 @@ public class AS2BasicAuthHeaderTest extends 
AbstractAS2ITSupport {
         };
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(TARGET_PORT);
+    }
+
     private static void receiveTestMessages() throws IOException {
         serverConnection = new AS2ServerConnection(
                 "1.1", "AS2ClientManagerIntegrationTest Server",
-                "server.example.com", 8889, 
AS2SignatureAlgorithm.SHA256WITHRSA,
+                "server.example.com", TARGET_PORT, 
AS2SignatureAlgorithm.SHA256WITHRSA,
                 null, null, null,
                 "TBD", null, null, null, null, null);
         requestHandler = new AS2ClientManagerIT.RequestHandler();
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIT.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIT.java
index 392ee75d3983..544b68de304c 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIT.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIT.java
@@ -150,7 +150,7 @@ public class AS2ClientManagerIT extends 
AbstractAS2ITSupport {
     private static final String SIGNED_RECEIPT_MIC_ALGORITHMS = "sha1,md5";
     private static final String DISPOSITION_NOTIFICATION_OPTIONS
             = "signed-receipt-protocol=optional,pkcs7-signature; 
signed-receipt-micalg=optional,sha1";
-    private static final int PARTNER_TARGET_PORT = 8889;
+    private static final int PARTNER_TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int MDN_TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String RECIPIENT_DELIVERY_ADDRESS = 
"http://localhost:"; + MDN_TARGET_PORT + "/handle-receipts";
     private static final String REPORTING_UA = "Server Responding with MDN";
@@ -165,6 +165,11 @@ public class AS2ClientManagerIT extends 
AbstractAS2ITSupport {
     private static KeyPair clientKeyPair;
     private static X509Certificate clientCert;
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(PARTNER_TARGET_PORT);
+    }
+
     @Test
     public void plainMessageSendTest() throws Exception {
         plainMessageSend(EDI_MESSAGE, EDI_MESSAGE_CONTENT_TRANSFER_ENCODING);
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBasicAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBasicAuthHeaderTest.java
index 397fbaa89fc5..62d99d7caab6 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBasicAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBasicAuthHeaderTest.java
@@ -42,6 +42,7 @@ public class AS2ServerBasicAuthHeaderTest extends 
AbstractAS2ITSupport {
 
     private static final String MDN_USER_NAME = "camel";
     private static final String MDN_PASSWORD = "rider";
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int JETTY_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String EDI_MESSAGE = """
             UNB+UNOA:1+005435656:1+006415160:1+060515:1434+00000000000778'
@@ -117,7 +118,12 @@ public class AS2ServerBasicAuthHeaderTest extends 
AbstractAS2ITSupport {
 
     private AS2ClientConnection getAs2ClientConnection() throws IOException {
         return new AS2ClientConnection(
-                "1.1", "Camel AS2 Endpoint", "example.org", "localhost", 8889, 
Duration.ofSeconds(5),
+                "1.1", "Camel AS2 Endpoint", "example.org", "localhost", 
TARGET_PORT, Duration.ofSeconds(5),
                 Duration.ofSeconds(5), 5, Duration.ofMinutes(15), null, null);
     }
+
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setServerPortNumber(TARGET_PORT);
+    }
 }
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBearerAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBearerAuthHeaderTest.java
index f2a9aa2dfdd8..6033e621f080 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBearerAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerBearerAuthHeaderTest.java
@@ -40,6 +40,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 public class AS2ServerBearerAuthHeaderTest extends AbstractAS2ITSupport {
 
     private static final String MDN_ACCESS_TOKEN = 
"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3";
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final int JETTY_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String EDI_MESSAGE = """
             UNB+UNOA:1+005435656:1+006415160:1+060515:1434+00000000000778'
@@ -114,7 +115,12 @@ public class AS2ServerBearerAuthHeaderTest extends 
AbstractAS2ITSupport {
 
     private AS2ClientConnection getAs2ClientConnection() throws IOException {
         return new AS2ClientConnection(
-                "1.1", "Camel AS2 Endpoint", "example.org", "localhost", 8889, 
Duration.ofSeconds(5),
+                "1.1", "Camel AS2 Endpoint", "example.org", "localhost", 
TARGET_PORT, Duration.ofSeconds(5),
                 Duration.ofSeconds(5), 5, Duration.ofMinutes(15), null, null);
     }
+
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setServerPortNumber(TARGET_PORT);
+    }
 }
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerManagerITBase.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerManagerITBase.java
index d135fff9f417..5f445b0db468 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerManagerITBase.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerManagerITBase.java
@@ -53,6 +53,7 @@ import org.apache.camel.support.jsse.KeyStoreParameters;
 import org.apache.camel.support.jsse.SSLContextParameters;
 import org.apache.camel.support.jsse.SSLContextServerParameters;
 import org.apache.camel.support.jsse.TrustManagersParameters;
+import org.apache.camel.test.AvailablePortFinder;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpVersion;
@@ -82,7 +83,7 @@ public class AS2ServerManagerITBase extends 
AbstractAS2ITSupport {
 
     protected static final String METHOD = "POST";
     protected static final String TARGET_HOST = "localhost";
-    protected static final int TARGET_PORT = 8889;
+    protected static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     protected static final Duration HTTP_SOCKET_TIMEOUT = 
Duration.ofSeconds(5);
     protected static final Duration HTTP_CONNECTION_TIMEOUT = 
Duration.ofSeconds(5);
     protected static final Integer HTTP_CONNECTION_POOL_SIZE = 5;
@@ -139,6 +140,11 @@ public class AS2ServerManagerITBase extends 
AbstractAS2ITSupport {
         setupSigningGenerator();
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setServerPortNumber(TARGET_PORT);
+    }
+
     @Override
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerSecTestBase.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerSecTestBase.java
index 3dbace0e8d19..d192ad4b1d6e 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerSecTestBase.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ServerSecTestBase.java
@@ -39,6 +39,7 @@ import 
org.apache.camel.component.as2.api.entity.AS2DispositionType;
 import 
org.apache.camel.component.as2.api.entity.AS2MessageDispositionNotificationEntity;
 import 
org.apache.camel.component.as2.api.entity.DispositionNotificationMultipartReportEntity;
 import org.apache.camel.component.as2.api.util.MicUtils;
+import org.apache.camel.test.AvailablePortFinder;
 import org.apache.hc.core5.http.ClassicHttpRequest;
 import org.apache.hc.core5.http.ClassicHttpResponse;
 import org.apache.hc.core5.http.HttpEntity;
@@ -57,7 +58,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 public class AS2ServerSecTestBase extends AbstractAS2ITSupport {
 
     protected static final String TARGET_HOST = "localhost";
-    protected static final int TARGET_PORT = 8889;
+    protected static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     protected static final Duration HTTP_SOCKET_TIMEOUT = 
Duration.ofSeconds(5);
     protected static final Duration HTTP_CONNECTION_TIMEOUT = 
Duration.ofSeconds(5);
     protected static final Integer HTTP_CONNECTION_POOL_SIZE = 5;
@@ -109,6 +110,11 @@ public class AS2ServerSecTestBase extends 
AbstractAS2ITSupport {
         setupKeysAndCertificates();
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setServerPortNumber(TARGET_PORT);
+    }
+
     @Override
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2TokenAuthHeaderTest.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2TokenAuthHeaderTest.java
index d1f0db96af94..f3e606eec44f 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2TokenAuthHeaderTest.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2TokenAuthHeaderTest.java
@@ -25,6 +25,7 @@ import org.apache.camel.component.as2.api.AS2MediaType;
 import org.apache.camel.component.as2.api.AS2MessageStructure;
 import org.apache.camel.component.as2.api.AS2ServerConnection;
 import org.apache.camel.component.as2.api.AS2SignatureAlgorithm;
+import org.apache.camel.test.AvailablePortFinder;
 import org.apache.hc.core5.http.HttpRequest;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
@@ -38,6 +39,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
  */
 public class AS2TokenAuthHeaderTest extends AbstractAS2ITSupport {
 
+    private static final int TARGET_PORT = 
AvailablePortFinder.getNextAvailable();
     private static final String ACCESS_TOKEN = 
"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3";
     private static final String EDI_MESSAGE = """
             UNB+UNOA:1+005435656:1+006415160:1+060515:1434+00000000000778'
@@ -135,10 +137,15 @@ public class AS2TokenAuthHeaderTest extends 
AbstractAS2ITSupport {
         };
     }
 
+    @Override
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        configuration.setTargetPortNumber(TARGET_PORT);
+    }
+
     private static void receiveTestMessages() throws IOException {
         serverConnection = new AS2ServerConnection(
                 "1.1", "AS2ClientManagerIntegrationTest Server",
-                "server.example.com", 8889, 
AS2SignatureAlgorithm.SHA256WITHRSA,
+                "server.example.com", TARGET_PORT, 
AS2SignatureAlgorithm.SHA256WITHRSA,
                 null, null, null,
                 "TBD", null, null, null, null, null);
         requestHandler = new AS2ClientManagerIT.RequestHandler();
diff --git 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AbstractAS2ITSupport.java
 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AbstractAS2ITSupport.java
index 67b5bedcf123..eb3a39d76235 100644
--- 
a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AbstractAS2ITSupport.java
+++ 
b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AbstractAS2ITSupport.java
@@ -48,6 +48,7 @@ public class AbstractAS2ITSupport extends CamelTestSupport {
 
         final AS2Configuration configuration = new AS2Configuration();
         PropertyBindingSupport.bindProperties(context, configuration, options);
+        customizeConfiguration(configuration);
 
         // add AS2Component to Camel context
         final AS2Component component = new AS2Component(context);
@@ -57,6 +58,10 @@ public class AbstractAS2ITSupport extends CamelTestSupport {
         return context;
     }
 
+    protected void customizeConfiguration(AS2Configuration configuration) {
+        // subclasses can override to customize the AS2 component configuration
+    }
+
     @SuppressWarnings("unchecked")
     protected <T> T requestBodyAndHeaders(String endpointUri, Object body, 
Map<String, Object> headers)
             throws CamelExecutionException {

Reply via email to