You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2019/08/17 18:32:09 UTC

[camel] branch CAMEL-13853 updated (4d12fdc -> 6796109)

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

janbednar pushed a change to branch CAMEL-13853
in repository https://gitbox.apache.org/repos/asf/camel.git.


 discard 4d12fdc  Merge branch 'master' of https://github.com/apache/camel into CAMEL-13853
 discard 43b594c  CAMEL-13853: fix tests
 discard 7c7efa0  CAMEL-13853: fix tests
 discard 091c4b4  CAMEL-13853: fix tests
 discard cda1d1a  Merge branch 'master' of https://github.com/apache/camel into CAMEL-13853
 discard 65e2582  CAMEL-13853: AvailablePortFinder now delegates the port selection to OS
 discard 4672cd8  CAMEL-13853: AvailablePortFinder now delegates the port selection to OS
 discard d6193ce  CAMEL-13853: AvailablePortFinder now delegates the port selection to OS
 discard 677a128  Merge branch 'master' of https://github.com/apache/camel into CAMEL-13853
 discard c7f36cd  CAMEL-13853: Fixed AvailablePortFinder for WSL
     add 5ba4736  cleanups for camel-hdfs2 to camel-hdfs component renaming
     add 4fca029  cleanups for camel-quartz2 to camel-quartz component renaming
     new 6796109  CAMEL-13853: AvailablePortFinder now delegates the port selection to OS

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (4d12fdc)
            \
             N -- N -- N   refs/heads/CAMEL-13853 (6796109)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../file/remote/sftp/SftpECKeyFileConsumeTest.java |  2 +-
 .../remote/sftp/SftpFromSedaDeleteFileTest.java    |  2 +-
 .../file/remote/sftp/SftpKeyFileConsumeTest.java   |  2 +-
 .../remote/sftp/SftpKeyPairDSAConsumeTest.java     | 10 +--
 .../file/remote/sftp/SftpKeyUriConsumeTest.java    |  2 +-
 .../file/remote/sftp/SftpServerTestSupport.java    | 14 ++--
 .../camel-ftp/src/test/resources/known_hosts       |  3 +-
 components/camel-hdfs/pom.xml                      |  2 +-
 .../camel-hdfs/src/main/docs/hdfs-component.adoc   |  4 +-
 .../component/{hdfs2 => hdfs}/HdfsComponent.java   |  2 +-
 .../{hdfs2 => hdfs}/HdfsCompressionCodec.java      |  4 +-
 .../{hdfs2 => hdfs}/HdfsConfiguration.java         |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsConstants.java   |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsConsumer.java    |  4 +-
 .../component/{hdfs2 => hdfs}/HdfsEndpoint.java    |  2 +-
 .../{hdfs2 => hdfs}/HdfsFileSystemType.java        |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsFileType.java    | 10 +--
 .../component/{hdfs2 => hdfs}/HdfsHeader.java      |  2 +-
 .../camel/component/{hdfs2 => hdfs}/HdfsInfo.java  |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsInfoFactory.java |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsInputStream.java |  4 +-
 .../component/{hdfs2 => hdfs}/HdfsOsgiHelper.java  |  2 +-
 .../{hdfs2 => hdfs}/HdfsOutputStream.java          |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsProducer.java    |  2 +-
 .../{hdfs2 => hdfs}/HdfsWritableFactories.java     |  2 +-
 .../camel/component/{hdfs2 => hdfs}/Holder.java    |  6 +-
 .../component/{hdfs2 => hdfs}/WritableType.java    |  2 +-
 .../{hdfs2 => hdfs}/osgi/HdfsActivator.java        |  2 +-
 .../{hdfs2 => hdfs}/FromFileToHdfsTest.java        |  2 +-
 .../{hdfs2 => hdfs}/HdfsConsumerTest.java          |  4 +-
 .../{hdfs2 => hdfs}/HdfsProducerConsumerTest.java  |  6 +-
 .../{hdfs2 => hdfs}/HdfsProducerSplitTest.java     |  4 +-
 .../{hdfs2 => hdfs}/HdfsProducerTest.java          |  2 +-
 .../component/{hdfs2 => hdfs}/HdfsTestSupport.java |  2 +-
 .../integration/HdfsAppendTest.java                |  2 +-
 .../HdfsProducerConsumerIntegrationTest.java       |  4 +-
 .../camel/component/mail/MailComponentTest.java    |  2 +-
 .../camel/component/netty/http/BaseNettyTest.java  |  1 -
 .../camel/component/netty/BaseNettyTest.java       |  1 -
 components/camel-quartz/pom.xml                    |  2 +-
 .../src/main/docs/quartz-component.adoc            |  8 +-
 .../component/{quartz2 => quartz}/CamelJob.java    | 14 ++--
 .../{quartz2 => quartz}/QuartzComponent.java       |  3 +-
 .../{quartz2 => quartz}/QuartzConstants.java       |  4 +-
 .../{quartz2 => quartz}/QuartzConsumer.java        |  2 +-
 .../{quartz2 => quartz}/QuartzEndpoint.java        | 18 ++---
 .../{quartz2 => quartz}/QuartzHelper.java          |  8 +-
 .../{quartz2 => quartz}/QuartzMessage.java         |  2 +-
 .../{quartz2 => quartz}/StatefulCamelJob.java      |  2 +-
 .../QuartzScheduledPollConsumerJob.java            |  4 +-
 .../QuartzScheduledPollConsumerScheduler.java      |  8 +-
 .../CronScheduledRoutePolicy.java                  | 12 +--
 .../{quartz2 => quartz}/ScheduledJob.java          |  6 +-
 .../{quartz2 => quartz}/ScheduledJobState.java     |  2 +-
 .../{quartz2 => quartz}/ScheduledRouteDetails.java |  2 +-
 .../{quartz2 => quartz}/ScheduledRoutePolicy.java  | 44 +++++------
 .../ScheduledRoutePolicyConstants.java             |  6 +-
 .../SimpleScheduledRoutePolicy.java                | 18 ++---
 .../{quartz2 => quartz}/BaseQuartzTest.java        |  2 +-
 .../DelegateEndpointQuartzTest.java                | 16 ++--
 .../QuartUnderscoreTimerNameTest.java              |  4 +-
 .../QuartzAddDynamicRouteTest.java                 |  4 +-
 ...uartzAddRoutesAfterCamelContextStartedTest.java |  2 +-
 .../{quartz2 => quartz}/QuartzAutoStartTest.java   |  2 +-
 ...omponentCamelContextSchedulerIsolationTest.java |  2 +-
 ...tzComponentCamelContextSharedSchedulerTest.java | 12 +--
 .../{quartz2 => quartz}/QuartzComponentTest.java   |  2 +-
 .../QuartzCronRouteDurableJobTest.java             |  4 +-
 .../{quartz2 => quartz}/QuartzCronRouteTest.java   |  4 +-
 .../QuartzCronRouteWithSmallCacheTest.java         |  4 +-
 .../QuartzCronTriggerRouteTest.java                |  2 +-
 .../QuartzCustomCalendarFireTest.java              |  2 +-
 .../QuartzCustomCalendarNoFireTest.java            |  2 +-
 .../QuartzEndpointConfigureTest.java               |  4 +-
 .../{quartz2 => quartz}/QuartzInterruptTest.java   |  4 +-
 .../QuartzJobRouteUnderscoreTest.java              |  4 +-
 .../{quartz2 => quartz}/QuartzManagementTest.java  |  2 +-
 .../QuartzManuallyTriggerJobTest.java              | 12 +--
 .../QuartzNameCollisionTest.java                   |  2 +-
 .../QuartzOneCamelContextRestartTest.java          |  2 +-
 .../QuartzOneCamelContextSuspendResumeTest.java    |  2 +-
 .../{quartz2 => quartz}/QuartzPropertiesTest.java  |  6 +-
 .../QuartzRepeatIntervalTest.java                  |  4 +-
 .../QuartzRouteFireNowOnlyOnceTest.java            |  6 +-
 .../QuartzRouteFireNowTest.java                    |  6 +-
 .../QuartzRouteRestartTest.java                    | 10 +--
 .../{quartz2 => quartz}/QuartzRouteTest.java       |  4 +-
 .../{quartz2 => quartz}/QuartzSimpleRouteTest.java |  4 +-
 .../QuartzStartDelayedOptionTest.java              |  2 +-
 .../QuartzStartDelayedTest.java                    |  2 +-
 .../QuartzStartDelayedWithReferenceTest.java       |  2 +-
 .../QuartzStatefulJobRouteTest.java                |  4 +-
 .../{quartz2 => quartz}/QuartzStopRouteTest.java   |  4 +-
 .../QuartzSuspendRouteTest.java                    |  4 +-
 .../QuartzTwoCamelContextRestartTest.java          |  2 +-
 .../QuartzTwoCamelContextSameNameClashTest.java    |  4 +-
 .../QuartzTwoCamelContextSuspendResumeTest.java    |  2 +-
 .../QuartzTwoCamelContextTest.java                 | 14 ++--
 ...QuartzConsumerTwoAppsClusteredFailoverTest.java | 14 ++--
 ...QuartzConsumerTwoAppsClusteredRecoveryTest.java |  8 +-
 .../SpringQuartzCronRouteTest.java                 |  4 +-
 ...PersistentStoreRestartAppChangeOptionsTest.java | 22 +++---
 .../SpringQuartzPersistentStoreRestartAppTest.java |  8 +-
 ...pringQuartzPersistentStoreRestartRouteTest.java |  4 +-
 .../SpringQuartzPersistentStoreTest.java           |  4 +-
 .../StatefulQuartzRouteTest.java                   |  2 +-
 .../FileConsumerQuartzSchedulerRestartTest.java    |  2 +-
 .../FileConsumerQuartzSchedulerTest.java           |  2 +-
 .../CronScheduledRoutePolicyTest.java              | 50 ++++++------
 .../{quartz2 => quartz}/DateFactory.java           |  2 +-
 .../MultiplePoliciesOnRouteTest.java               | 20 ++---
 .../{quartz2 => quartz}/MyRoutePolicy.java         |  4 +-
 .../RouteAutoStopFalseCronScheduledPolicyTest.java |  2 +-
 .../SimpleScheduledCombinedRoutePolicyTest.java    | 18 ++---
 .../SimpleScheduledRoutePolicyTest.java            | 88 +++++++++++-----------
 .../SpringCronScheduledRoutePolicyTest.java        | 12 +--
 .../SpringMultiplePoliciesOnRouteTest.java         |  6 +-
 .../SpringQuartzTwoAppsClusteredFailoverTest.java  |  8 +-
 .../SpringScheduledRoutePolicyTest.java            | 50 ++++++------
 .../SpringSimpleScheduledRoutePolicyTest.java      | 14 ++--
 .../SpringQuartzConsumerClusteredAppDatabase.xml   |  0
 .../SpringQuartzConsumerClusteredAppOne.xml        |  4 +-
 .../SpringQuartzConsumerClusteredAppTwo.xml        |  4 +-
 ...SpringQuartzConsumerRecoveryClusteredAppOne.xml |  4 +-
 ...SpringQuartzConsumerRecoveryClusteredAppTwo.xml |  2 +-
 .../SpringQuartzCronRouteTest.xml                  |  0
 ...entStoreRestartAppChangeCronExpressionTest1.xml |  2 +-
 ...entStoreRestartAppChangeCronExpressionTest2.xml |  2 +-
 ...entStoreRestartAppChangeCronExpressionTest3.xml |  2 +-
 ...PersistentStoreRestartAppChangeOptionsTest1.xml |  2 +-
 ...PersistentStoreRestartAppChangeOptionsTest2.xml |  2 +-
 .../SpringQuartzPersistentStoreRestartTest.xml     |  2 +-
 .../SpringQuartzPersistentStoreTest.xml            |  2 +-
 .../quartz}/myquartz.properties                    |  0
 .../{quartz2 => quartz}/CronPolicies.xml           | 10 +--
 .../{quartz2 => quartz}/MultiplePolicies.xml       |  4 +-
 .../{quartz2 => quartz}/SimplePolicies.xml         | 12 +--
 .../SpringQuartzClusteredAppDatabase.xml           |  0
 .../SpringQuartzClusteredAppOne.xml                |  4 +-
 .../SpringQuartzClusteredAppTwo.xml                |  4 +-
 .../quartz}/myquartz.properties                    |  0
 .../src/test/resources/tables_derby.sql            | 22 +++---
 ...ointTest.java => MasterQuartzEndpointTest.java} |  2 +-
 ...xt.xml => MasterQuartzEndpointTest-context.xml} |  0
 core/camel-core/pom.xml                            |  2 +-
 .../endpoint/dsl/HdfsEndpointBuilderFactory.java   | 74 +++++++++---------
 .../camel/support/ScheduledPollEndpoint.java       |  6 +-
 .../modules/ROOT/pages/hdfs-component.adoc         |  4 +-
 .../modules/ROOT/pages/quartz-component.adoc       |  8 +-
 .../ROOT/pages/cronscheduledroutepolicy.adoc       |  2 +-
 .../META-INF/spring-configuration-metadata.json    | 52 ++++++-------
 .../META-INF/spring-configuration-metadata.json    | 50 ++++++------
 .../META-INF/spring-configuration-metadata.json    | 52 ++++++-------
 parent/pom.xml                                     |  2 +-
 .../karaf/features/src/main/resources/features.xml |  2 +-
 .../springboot/HdfsComponentAutoConfiguration.java |  4 +-
 .../springboot/HdfsComponentConfiguration.java     |  2 +-
 .../src/main/resources/META-INF/spring.factories   |  2 +-
 .../QuartzComponentAutoConfiguration.java          |  4 +-
 .../springboot/QuartzComponentConfiguration.java   |  2 +-
 .../src/main/resources/META-INF/spring.factories   |  2 +-
 .../camel/itest/CamelQuartzJmxUpdateTest.java      |  2 +-
 ...UpdateTest.xml => CamelQuartzJmxUpdateTest.xml} |  0
 .../quartz/FtpCronScheduledRoutePolicyTest.java    |  2 +-
 164 files changed, 579 insertions(+), 593 deletions(-)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsComponent.java (98%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsCompressionCodec.java (96%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsConfiguration.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsConstants.java (97%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsConsumer.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsEndpoint.java (98%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsFileSystemType.java (97%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsFileType.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsHeader.java (95%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsInfo.java (97%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsInfoFactory.java (97%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsInputStream.java (98%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsOsgiHelper.java (98%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsOutputStream.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsProducer.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsWritableFactories.java (99%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/Holder.java (96%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/WritableType.java (98%)
 rename components/camel-hdfs/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/osgi/HdfsActivator.java (98%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/FromFileToHdfsTest.java (98%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsConsumerTest.java (99%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsProducerConsumerTest.java (98%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsProducerSplitTest.java (99%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsProducerTest.java (99%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/HdfsTestSupport.java (97%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/integration/HdfsAppendTest.java (98%)
 rename components/camel-hdfs/src/test/java/org/apache/camel/component/{hdfs2 => hdfs}/integration/HdfsProducerConsumerIntegrationTest.java (99%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/CamelJob.java (97%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzComponent.java (99%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzConstants.java (97%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzConsumer.java (97%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzEndpoint.java (98%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzHelper.java (98%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/QuartzMessage.java (98%)
 rename components/camel-quartz/src/main/java/org/apache/camel/component/{quartz2 => quartz}/StatefulCamelJob.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/pollconsumer/{quartz2 => quartz}/QuartzScheduledPollConsumerJob.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/pollconsumer/{quartz2 => quartz}/QuartzScheduledPollConsumerScheduler.java (98%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/CronScheduledRoutePolicy.java (97%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/ScheduledJob.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/ScheduledJobState.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/ScheduledRouteDetails.java (98%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/ScheduledRoutePolicy.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/ScheduledRoutePolicyConstants.java (96%)
 rename components/camel-quartz/src/main/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SimpleScheduledRoutePolicy.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/BaseQuartzTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/DelegateEndpointQuartzTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartUnderscoreTimerNameTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzAddDynamicRouteTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzAddRoutesAfterCamelContextStartedTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzAutoStartTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzComponentCamelContextSchedulerIsolationTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzComponentCamelContextSharedSchedulerTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzComponentTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCronRouteDurableJobTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCronRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCronRouteWithSmallCacheTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCronTriggerRouteTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCustomCalendarFireTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzCustomCalendarNoFireTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzEndpointConfigureTest.java (99%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzInterruptTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzJobRouteUnderscoreTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzManagementTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzManuallyTriggerJobTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzNameCollisionTest.java (99%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzOneCamelContextRestartTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzOneCamelContextSuspendResumeTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzPropertiesTest.java (94%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzRepeatIntervalTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzRouteFireNowOnlyOnceTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzRouteFireNowTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzRouteRestartTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzRouteTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzSimpleRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzStartDelayedOptionTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzStartDelayedTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzStartDelayedWithReferenceTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzStatefulJobRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzStopRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzSuspendRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzTwoCamelContextRestartTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzTwoCamelContextSameNameClashTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzTwoCamelContextSuspendResumeTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/QuartzTwoCamelContextTest.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerTwoAppsClusteredFailoverTest.java (92%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerTwoAppsClusteredRecoveryTest.java (93%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzCronRouteTest.java (93%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeOptionsTest.java (89%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppTest.java (92%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartRouteTest.java (95%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreTest.java (93%)
 rename components/camel-quartz/src/test/java/org/apache/camel/component/{quartz2 => quartz}/StatefulQuartzRouteTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/pollconsumer/{quartz2 => quartz}/FileConsumerQuartzSchedulerRestartTest.java (98%)
 rename components/camel-quartz/src/test/java/org/apache/camel/pollconsumer/{quartz2 => quartz}/FileConsumerQuartzSchedulerTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/CronScheduledRoutePolicyTest.java (92%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/DateFactory.java (95%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/MultiplePoliciesOnRouteTest.java (91%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/MyRoutePolicy.java (96%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/RouteAutoStopFalseCronScheduledPolicyTest.java (97%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SimpleScheduledCombinedRoutePolicyTest.java (90%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SimpleScheduledRoutePolicyTest.java (90%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringCronScheduledRoutePolicyTest.java (92%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringMultiplePoliciesOnRouteTest.java (94%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringQuartzTwoAppsClusteredFailoverTest.java (93%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringScheduledRoutePolicyTest.java (92%)
 rename components/camel-quartz/src/test/java/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringSimpleScheduledRoutePolicyTest.java (92%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerClusteredAppDatabase.xml (100%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerClusteredAppOne.xml (95%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerClusteredAppTwo.xml (94%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerRecoveryClusteredAppOne.xml (96%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzConsumerRecoveryClusteredAppTwo.xml (97%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzCronRouteTest.xml (100%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest1.xml (99%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest2.xml (99%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeCronExpressionTest3.xml (99%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeOptionsTest1.xml (99%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartAppChangeOptionsTest2.xml (99%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreRestartTest.xml (97%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/component/{quartz2 => quartz}/SpringQuartzPersistentStoreTest.xml (97%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/{routepolicy/quartz2 => component/quartz}/myquartz.properties (100%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/CronPolicies.xml (92%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/MultiplePolicies.xml (93%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/SimplePolicies.xml (90%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringQuartzClusteredAppDatabase.xml (100%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringQuartzClusteredAppOne.xml (96%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/routepolicy/{quartz2 => quartz}/SpringQuartzClusteredAppTwo.xml (96%)
 rename components/camel-quartz/src/test/resources/org/apache/camel/{component/quartz2 => routepolicy/quartz}/myquartz.properties (100%)
 rename components/camel-zookeeper-master/src/test/java/org/apache/camel/component/zookeepermaster/{MasterQuartz2EndpointTest.java => MasterQuartzEndpointTest.java} (96%)
 rename components/camel-zookeeper-master/src/test/resources/org/apache/camel/component/zookeepermaster/{MasterQuartz2EndpointTest-context.xml => MasterQuartzEndpointTest-context.xml} (100%)
 rename platforms/spring-boot/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/springboot/HdfsComponentAutoConfiguration.java (98%)
 rename platforms/spring-boot/components-starter/camel-hdfs-starter/src/main/java/org/apache/camel/component/{hdfs2 => hdfs}/springboot/HdfsComponentConfiguration.java (97%)
 rename platforms/spring-boot/components-starter/camel-quartz-starter/src/main/java/org/apache/camel/component/{quartz2 => quartz}/springboot/QuartzComponentAutoConfiguration.java (98%)
 rename platforms/spring-boot/components-starter/camel-quartz-starter/src/main/java/org/apache/camel/component/{quartz2 => quartz}/springboot/QuartzComponentConfiguration.java (99%)
 rename tests/camel-itest-osgi/src/test/resources/org/apache/camel/itest/{CamelQuartz2JmxUpdateTest.xml => CamelQuartzJmxUpdateTest.xml} (100%)


[camel] 01/01: CAMEL-13853: AvailablePortFinder now delegates the port selection to OS

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

janbednar pushed a commit to branch CAMEL-13853
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 6796109969335083d9d0ed15385476f62a4fc06e
Author: Jan Bednář <ma...@janbednar.eu>
AuthorDate: Sat Aug 17 17:50:49 2019 +0200

    CAMEL-13853: AvailablePortFinder now delegates the port selection to OS
---
 .../apache/camel/component/ahc/BaseAhcTest.java    |   4 +-
 .../camel/component/as2/api/AS2MessageTest.java    |   2 +-
 .../as2/AS2ClientManagerIntegrationTest.java       |   2 +-
 .../camel/component/avro/AvroTestSupport.java      |   2 +-
 .../camel/component/cmis/CMISTestSupport.java      |   2 +-
 .../cometd/CometdCrossOriginConsumerTest.java      |   2 +-
 .../cometd/CometdProducerConsumerTest.java         |   2 +-
 .../cometd/MultipCometdProducerConsumerTest.java   |   4 +-
 .../cometd/SslCometdProducerConsumerTest.java      |   2 +-
 ...ontextParametersCometdProducerConsumerTest.java |   2 +-
 ...tParametersInUriCometdProducerConsumerTest.java |   2 +-
 ...ontextParametersCometdProducerConsumerTest.java |   2 +-
 .../elasticsearch/ElasticsearchBaseTest.java       |   9 +-
 .../ElasticsearchClusterBaseTest.java              |  10 +-
 .../ElasticsearchClusterIndexTest.java             |   4 +-
 .../file/remote/BaseServerTestSupport.java         |  17 ++-
 .../file/remote/FtpServerTestSupport.java          |  10 +-
 .../file/remote/sftp/SftpECKeyFileConsumeTest.java |   2 +-
 .../remote/sftp/SftpFromSedaDeleteFileTest.java    |   2 +-
 .../file/remote/sftp/SftpKeyFileConsumeTest.java   |   2 +-
 .../remote/sftp/SftpKeyPairDSAConsumeTest.java     |  10 +-
 .../remote/sftp/SftpKeyPairRSAConsumeTest.java     |   2 +-
 .../file/remote/sftp/SftpKeyUriConsumeTest.java    |   2 +-
 .../file/remote/sftp/SftpServerTestSupport.java    |  19 ++-
 .../sftp/SftpSimpleConsumeThroughProxyTest.java    |   2 +-
 .../sftp/SftpSimpleProduceThroughProxyTest.java    |   2 +-
 .../camel-ftp/src/test/resources/known_hosts       |   3 +-
 .../apache/camel/component/hl7/HL7TestSupport.java |   2 +-
 .../http/HttpCustomComponentNameTest.java          |   2 +-
 .../component/http/HttpProducerSessionTest.java    |   2 +-
 ...psTwoComponentsSslContextParametersGetTest.java |   2 +-
 .../camel/component/jetty/BaseJettyTest.java       |   8 +-
 .../apache/camel/component/jetty/jetty-https.xml   |   5 -
 .../jetty/jetty-noconnection-redelivery.xml        |   5 -
 .../camel/component/jetty/jetty-noconnection.xml   |   5 -
 .../apache/camel/component/jmx/JMXRemoteTest.java  |   2 +-
 .../jmx/JMXRobustRemoteConnectionTest.java         |   2 +-
 .../camel/component/scp/ScpServerTestSupport.java  |   2 +-
 .../component/kafka/BaseEmbeddedKafkaTest.java     |   4 +-
 .../camel/component/netty/http/BaseNettyTest.java  |  29 +----
 .../http/NettyHttpGetWithInvalidMessageTest.java   |   8 +-
 .../netty/http/NettyHttpProducerHeadersTest.java   |   2 +-
 .../netty/http/SpringNettyHttpBasicAuthTest.xml    |   5 -
 .../netty/http/SpringNettyHttpSSLTest.xml          |   5 -
 .../camel/component/netty/BaseNettyTest.java       |  29 +----
 .../camel/component/pubnub/PubNubTestBase.java     |   2 +-
 .../RestRestletProducerGetJettyServerTest.java     |   2 +-
 .../component/restlet/RestRestletRouterIdTest.java |   2 +-
 .../component/restlet/RestletSetBodyTest.java      |   2 +-
 .../camel/component/sip/PublishSubscribeTest.java  |   6 +-
 .../component/sjms/support/JmsTestSupport.java     |   4 +-
 .../component/sjms2/support/Jms2TestSupport.java   |   2 +-
 .../camel/component/solr/SolrTestSupport.java      |   4 +-
 .../camel/component/sparkrest/BaseSparkTest.java   |   2 +-
 .../component/ssh/SshComponentTestSupport.java     |   2 +-
 .../camel/component/stomp/StompBaseTest.java       |   2 +-
 .../camel/component/stomp/StompConsumerTest.java   |   2 +-
 .../camel/component/stomp/StompProducerTest.java   |   2 +-
 .../component/syslog/SyslogSpringMinaTest.java     |   2 +-
 .../component/syslog/SyslogSpringNettyTest.java    |   2 +-
 .../org/apache/camel/test/AvailablePortFinder.java | 138 ++-------------------
 .../apache/camel/test/AvailablePortFinderTest.java |  44 +++----
 .../org/apache/camel/test/AvailablePortFinder.java | 133 ++------------------
 .../apache/camel/test/AvailablePortFinderTest.java |  40 +++---
 .../camel/component/undertow/BaseUndertowTest.java |   8 +-
 .../undertow/UndertowHttpProducerSessionTest.java  |   2 +-
 .../src/test/resources/SpringTest.xml              |   5 -
 .../component/vertx/VertxBaseTestSupport.java      |   2 +-
 .../websocket/WebsocketClientCamelRouteTest.java   |   2 +-
 .../WebsocketComponentRouteExampleTest.java        |   2 +-
 .../websocket/WebsocketConsumerRouteTest.java      |   2 +-
 .../WebsocketEndpointConfigurationTest.java        |   6 +-
 .../WebsocketProducerRouteExampleTest.java         |   2 +-
 .../WebsocketProducerRouteRestartTest.java         |   2 +-
 .../websocket/WebsocketRouteExampleTest.java       |   2 +-
 .../WebsocketSSLClientAuthRouteExampleTest.java    |   2 +-
 .../WebsocketSSLContextGlobalRouteExampleTest.java |   2 +-
 .../WebsocketSSLContextInUriRouteExampleTest.java  |   2 +-
 .../websocket/WebsocketSSLRouteExampleTest.java    |   2 +-
 .../component/websocket/WebsocketStaticTest.java   |   2 +-
 .../websocket/WebsocketTwoRoutesExampleTest.java   |   2 +-
 ...SIndividualAndBroadcastEndpointExampleTest.java |   2 +-
 ...ebsocketTwoRoutesToSameEndpointExampleTest.java |   2 +-
 .../component/xmpp/EmbeddedXmppTestServer.java     |   2 +-
 .../component/zookeeper/ZooKeeperTestSupport.java  |   2 +-
 .../camel/management/util/AvailablePortFinder.java | 133 ++------------------
 .../example/artemis/amqp/ArtemisAmqpIntTest.java   |   2 +-
 .../camel/itest/jms2/BaseJms2TestSupport.java      |   2 +-
 .../camel/itest/cxf/CamelCxfBeanInjectTest.java    |   2 +-
 .../java/org/apache/camel/itest/ITestSupport.java  |   4 +-
 .../camel/itest/async/HttpAsyncTestSupport.java    |   2 +-
 ...ipientListInterceptSendToEndpointIssueTest.java |   4 +-
 .../org/apache/camel/itest/ftp/FtpXQueryTest.java  |   2 +-
 ...ringFileAntPathMatcherRemoteFileFilterTest.java |   2 +-
 .../camel/itest/ftp/SpringFtpEndpointTest.java     |   2 +-
 .../itest/greeter/CamelFileGreeterOneWayTest.java  |   2 +-
 .../itest/greeter/CamelGreeterConsumerTest.java    |   2 +-
 .../itest/greeter/CamelGreeterFileDomTest.java     |   2 +-
 .../camel/itest/greeter/CamelGreeterTest.java      |   2 +-
 .../camel/itest/greeter/CxfToJmsInOutTest.java     |   2 +-
 .../greeter/JettyRecipientListCxfIssueTest.java    |   6 +-
 .../camel/itest/greeter/JmsToCxfInOutTest.java     |   2 +-
 .../camel/itest/greeter/MulticastCxfTest.java      |   2 +-
 .../camel/itest/greeter/RecipientListCxf2Test.java |   4 +-
 .../camel/itest/greeter/RecipientListCxfTest.java  |   4 +-
 .../apache/camel/itest/http/HttpTestServer.java    |   2 +-
 .../jetty/JettyBridgeHostHeaderIssueTest.java      |  10 +-
 .../itest/jetty/JettyConstantSetHeaderTest.java    |   2 +-
 .../itest/jetty/JettyFailoverRoundRobinTest.java   |   8 +-
 .../camel/itest/jetty/JettyFreemarkerTest.java     |   2 +-
 .../itest/jetty/JettyGroovySetHeaderTest.java      |   2 +-
 .../jetty/JettyJmsShutdownInProgressTest.java      |   2 +-
 .../camel/itest/jetty/JettyJmsShutdownTest.java    |   2 +-
 .../org/apache/camel/itest/jetty/JettyJmsTest.java |   2 +-
 .../camel/itest/jetty/JettyJmsTwowayTest.java      |   2 +-
 .../itest/jetty/JettyMulticastJmsFileTest.java     |   2 +-
 .../camel/itest/jetty/JettyRestRedirectTest.java   |   2 +-
 .../itest/jetty/JettySimpleSetHeaderTest.java      |   2 +-
 .../jetty/JettySimulateFailoverRoundRobinTest.java |   8 +-
 .../jetty/JettySpringFailoverRoundRobinTest.java   |   8 +-
 .../itest/jetty/JettyValidatorStreamTest.java      |   2 +-
 ...alidatorStreamWithStreamCachingEnabledTest.java |   2 +-
 .../camel/itest/jetty/JettyValidatorTest.java      |   2 +-
 .../camel/itest/jetty/JettyVelocityTest.java       |   2 +-
 .../itest/jetty/JettyXsltHttpTemplateTest.java     |   2 +-
 .../apache/camel/itest/jetty/JettyXsltTest.java    |   2 +-
 .../JMSTransactionIsTransactedRedeliveredTest.java |   2 +-
 .../org/apache/camel/itest/jms/JmsHttpJmsTest.java |   2 +-
 .../camel/itest/jms/JmsHttpPostIssueTest.java      |   2 +-
 .../itest/jms/JmsHttpPostIssueWithMockTest.java    |   2 +-
 .../apache/camel/itest/jms/JmsJettyAsyncTest.java  |   2 +-
 .../itest/netty/NettyAsyncRequestReplyTest.java    |   2 +-
 .../NettyHttpClientChunkedResponseTest.java        |   4 +-
 .../org/apache/camel/itest/tx/JmsToHttpRoute.java  |   2 +-
 ...ndNoTransactionErrorHandlerConfiguredRoute.java |   2 +-
 .../itest/tx/JmsToHttpWithOnExceptionRoute.java    |   2 +-
 .../camel/itest/tx/JmsToHttpWithRollbackRoute.java |   2 +-
 137 files changed, 283 insertions(+), 683 deletions(-)

diff --git a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/BaseAhcTest.java b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/BaseAhcTest.java
index 791d620..047b2b1 100644
--- a/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/BaseAhcTest.java
+++ b/components/camel-ahc/src/test/java/org/apache/camel/component/ahc/BaseAhcTest.java
@@ -38,7 +38,7 @@ public abstract class BaseAhcTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(24000);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     @Override
@@ -128,7 +128,7 @@ public abstract class BaseAhcTest extends CamelTestSupport {
     }
 
     protected synchronized int getNextPort() {
-        port = AvailablePortFinder.getNextAvailable(port + 1);
+        port = AvailablePortFinder.getNextAvailable();
         return port;
     }
 
diff --git a/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/AS2MessageTest.java b/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/AS2MessageTest.java
index 9f93de0..db43751 100644
--- a/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/AS2MessageTest.java
+++ b/components/camel-as2/camel-as2-api/src/test/java/org/apache/camel/component/as2/api/AS2MessageTest.java
@@ -119,7 +119,7 @@ public class AS2MessageTest {
 
     private static final String METHOD = "POST";
     private static final String TARGET_HOST = "localhost";
-    private static final int TARGET_PORT = AvailablePortFinder.getNextAvailable(8080);
+    private static final int TARGET_PORT = AvailablePortFinder.getNextAvailable();
     private static final String RECIPIENT_DELIVERY_ADDRESS = "http://localhost:" + TARGET_PORT + "/handle-receipts";
     private static final String AS2_VERSION = "1.1";
     private static final String USER_AGENT = "Camel AS2 Endpoint";
diff --git a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIntegrationTest.java b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIntegrationTest.java
index 4142012..3e1e095 100644
--- a/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIntegrationTest.java
+++ b/components/camel-as2/camel-as2-component/src/test/java/org/apache/camel/component/as2/AS2ClientManagerIntegrationTest.java
@@ -147,7 +147,7 @@ public class AS2ClientManagerIntegrationTest extends AbstractAS2TestSupport {
     private static final String[] SIGNED_RECEIPT_MIC_ALGORITHMS = new String[] {"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 = 8888;
-    private static final int MDN_TARGET_PORT = AvailablePortFinder.getNextAvailable(8889);
+    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";
 
diff --git a/components/camel-avro/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java b/components/camel-avro/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java
index e5d6ea7..e19ef3c 100644
--- a/components/camel-avro/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java
+++ b/components/camel-avro/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java
@@ -27,7 +27,7 @@ public class AvroTestSupport extends CamelTestSupport {
     
 
     public int setupFreePort(String name) {
-        port = AvailablePortFinder.getNextAvailable(++port);
+        port = AvailablePortFinder.getNextAvailable();
         System.setProperty(name, String.valueOf(port));
         return port;
     }
diff --git a/components/camel-cmis/src/test/java/org/apache/camel/component/cmis/CMISTestSupport.java b/components/camel-cmis/src/test/java/org/apache/camel/component/cmis/CMISTestSupport.java
index f8c8fb0..f95b00f 100644
--- a/components/camel-cmis/src/test/java/org/apache/camel/component/cmis/CMISTestSupport.java
+++ b/components/camel-cmis/src/test/java/org/apache/camel/component/cmis/CMISTestSupport.java
@@ -149,7 +149,7 @@ public class CMISTestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void startServer() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(26500);
+        port = AvailablePortFinder.getNextAvailable();
         cmisServer = new Server(port);
         cmisServer.setHandler(new WebAppContext(OPEN_CMIS_SERVER_WAR_PATH, "/chemistry-opencmis-server-inmemory"));
         cmisServer.start();
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdCrossOriginConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdCrossOriginConsumerTest.java
index e9cfbe0..340d94b 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdCrossOriginConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdCrossOriginConsumerTest.java
@@ -53,7 +53,7 @@ public class CometdCrossOriginConsumerTest extends CamelTestSupport {
     public void testFilterArgumentsSetOnEndpoint() throws Exception {
         // setup
         CometdComponent component = context.getComponent("cometd", CometdComponent.class);
-        int port = AvailablePortFinder.getNextAvailable(23500);
+        int port = AvailablePortFinder.getNextAvailable();
 
         // act
         Endpoint result = component
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdProducerConsumerTest.java
index a19398b..7846e51 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/CometdProducerConsumerTest.java
@@ -116,7 +116,7 @@ public class CometdProducerConsumerTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23500);
+        port = AvailablePortFinder.getNextAvailable();
         uri = "cometd://127.0.0.1:" + port + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&sessionHeadersEnabled=true&logLevel=2";
 
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java
index 2a98221..59994cc 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/MultipCometdProducerConsumerTest.java
@@ -53,8 +53,8 @@ public class MultipCometdProducerConsumerTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port1 = AvailablePortFinder.getNextAvailable(23500);
-        port2 = AvailablePortFinder.getNextAvailable(23510);
+        port1 = AvailablePortFinder.getNextAvailable();
+        port2 = AvailablePortFinder.getNextAvailable();
         uri1 = "cometd://127.0.0.1:" + port1 + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&logLevel=2";
 
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslCometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslCometdProducerConsumerTest.java
index 9ebc713..39522cb 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslCometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslCometdProducerConsumerTest.java
@@ -52,7 +52,7 @@ public class SslCometdProducerConsumerTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23500);
+        port = AvailablePortFinder.getNextAvailable();
         uri = "cometds://127.0.0.1:" + port + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&logLevel=2";
 
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersCometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersCometdProducerConsumerTest.java
index 7ddbf1e..21316fb 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersCometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersCometdProducerConsumerTest.java
@@ -54,7 +54,7 @@ public class SslContextParametersCometdProducerConsumerTest extends CamelTestSup
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23500);
+        port = AvailablePortFinder.getNextAvailable();
         uri = "cometds://127.0.0.1:" + port + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&logLevel=2";
 
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersInUriCometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersInUriCometdProducerConsumerTest.java
index 39e5fe0..0dfb3ed 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersInUriCometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslContextParametersInUriCometdProducerConsumerTest.java
@@ -75,7 +75,7 @@ public class SslContextParametersInUriCometdProducerConsumerTest extends CamelTe
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23500);
+        port = AvailablePortFinder.getNextAvailable();
         uri = "cometds://127.0.0.1:" + port + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&logLevel=2";
         super.setUp();
diff --git a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslGlobalContextParametersCometdProducerConsumerTest.java b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslGlobalContextParametersCometdProducerConsumerTest.java
index 1ddf454..9886568 100644
--- a/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslGlobalContextParametersCometdProducerConsumerTest.java
+++ b/components/camel-cometd/src/test/java/org/apache/camel/component/cometd/SslGlobalContextParametersCometdProducerConsumerTest.java
@@ -56,7 +56,7 @@ public class SslGlobalContextParametersCometdProducerConsumerTest extends CamelT
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23500);
+        port = AvailablePortFinder.getNextAvailable();
         uri = "cometds://127.0.0.1:" + port + "/service/test?baseResource=file:./target/test-classes/webapp&"
                 + "timeout=240000&interval=0&maxInterval=30000&multiFrameInterval=1500&jsonCommented=true&logLevel=2";
 
diff --git a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchBaseTest.java b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchBaseTest.java
index f9f927f..605981f 100644
--- a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchBaseTest.java
+++ b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchBaseTest.java
@@ -40,15 +40,19 @@ public class ElasticsearchBaseTest extends CamelTestSupport {
     public static RestClient client;
 
     protected static final int ES_BASE_TRANSPORT_PORT = AvailablePortFinder.getNextAvailable();
-    protected static final int ES_BASE_HTTP_PORT = AvailablePortFinder.getNextAvailable(ES_BASE_TRANSPORT_PORT + 1);
+    protected static final int ES_BASE_HTTP_PORT = AvailablePortFinder.getNextAvailable();
 
     @SuppressWarnings("resource")
     @BeforeClass
     public static void cleanupOnce() throws Exception {
         deleteDirectory("target/testcluster/");
+
         clusterName = "es-cl-run-" + System.currentTimeMillis();
 
         runner = new ElasticsearchClusterRunner();
+        runner.setMaxHttpPort(-1);
+        runner.setMaxTransportPort(-1);
+
         // create ES nodes
         runner.onBuild((number, settingsBuilder) -> {
             settingsBuilder.put("http.cors.enabled", true);
@@ -56,7 +60,8 @@ public class ElasticsearchBaseTest extends CamelTestSupport {
         }).build(newConfigs()
             .clusterName(clusterName)
             .numOfNode(1)
-            .baseHttpPort(ES_BASE_TRANSPORT_PORT)
+            .baseHttpPort(ES_BASE_HTTP_PORT - 1) // ElasticsearchClusterRunner add node id to port, so set it to ES_BASE_HTTP_PORT-1 to start node 1 exactly on ES_BASE_HTTP_PORT
+            .baseTransportPort(ES_BASE_TRANSPORT_PORT - 1) // ElasticsearchClusterRunner add node id to port, so set it to ES_BASE_TRANSPORT_PORT-1 to start node 1 exactly on ES_BASE_TRANSPORT_PORT
             .basePath("target/testcluster/"));
 
         // wait for green status
diff --git a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterBaseTest.java b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterBaseTest.java
index 73a9787..6a3705a 100644
--- a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterBaseTest.java
+++ b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterBaseTest.java
@@ -41,7 +41,7 @@ public class ElasticsearchClusterBaseTest extends CamelTestSupport {
     public static RestHighLevelClient client;
 
     protected static final int ES_BASE_HTTP_PORT = AvailablePortFinder.getNextAvailable();
-    protected static final int ES_FIRST_NODE_TRANSPORT_PORT = AvailablePortFinder.getNextAvailable(ES_BASE_HTTP_PORT + 1);
+    protected static final int ES_FIRST_NODE_TRANSPORT_PORT = AvailablePortFinder.getNextAvailable();
 
     @SuppressWarnings("resource")
     @BeforeClass
@@ -51,6 +51,9 @@ public class ElasticsearchClusterBaseTest extends CamelTestSupport {
         // create runner instance
 
         runner = new ElasticsearchClusterRunner();
+        runner.setMaxHttpPort(-1);
+        runner.setMaxTransportPort(-1);
+
         // create ES nodes
         runner.onBuild((number, settingsBuilder) -> {
             settingsBuilder.put("http.cors.enabled", true);
@@ -58,12 +61,13 @@ public class ElasticsearchClusterBaseTest extends CamelTestSupport {
         }).build(newConfigs()
                  .clusterName(clusterName)
                  .numOfNode(1)
-                 .baseHttpPort(ES_BASE_HTTP_PORT)
+                 .baseHttpPort(ES_BASE_HTTP_PORT - 1) // ElasticsearchClusterRunner add node id to port, so set it to ES_BASE_HTTP_PORT-1 to start node 1 exactly on ES_BASE_HTTP_PORT
+                 .baseTransportPort(ES_FIRST_NODE_TRANSPORT_PORT - 1) // ElasticsearchClusterRunner add node id to port, so set it to ES_FIRST_NODE_TRANSPORT_PORT-1 to start node 1 exactly on ES_FIRST_NODE_TRANSPORT_PORT
                  .basePath("target/testcluster/"));
 
         // wait for green status
         runner.ensureGreen();
-        restclientbuilder = RestClient.builder(new HttpHost(InetAddress.getByName("127.0.0.1"), ES_FIRST_NODE_TRANSPORT_PORT));
+        restclientbuilder = RestClient.builder(new HttpHost(InetAddress.getByName("127.0.0.1"), ES_BASE_HTTP_PORT));
         client = new RestHighLevelClient(restclientbuilder);
         restClient = client.getLowLevelClient();
     }
diff --git a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterIndexTest.java b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterIndexTest.java
index c350330..41a4d0e 100644
--- a/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterIndexTest.java
+++ b/components/camel-elasticsearch-rest/src/test/java/org/apache/camel/component/elasticsearch/ElasticsearchClusterIndexTest.java
@@ -73,9 +73,9 @@ public class ElasticsearchClusterIndexTest extends ElasticsearchClusterBaseTest
             @Override
             public void configure() {
                 from("direct:indexWithIpAndPort")
-                    .to("elasticsearch-rest://" + clusterName + "?operation=Index&indexName=twitter&hostAddresses=localhost:" + ES_FIRST_NODE_TRANSPORT_PORT);
+                    .to("elasticsearch-rest://" + clusterName + "?operation=Index&indexName=twitter&hostAddresses=localhost:" + ES_BASE_HTTP_PORT);
                 from("direct:indexWithSniffer")
-                    .to("elasticsearch-rest://" + clusterName + "?operation=Index&indexName=twitter&enableSniffer=true&hostAddresses=localhost:" + ES_FIRST_NODE_TRANSPORT_PORT);
+                    .to("elasticsearch-rest://" + clusterName + "?operation=Index&indexName=twitter&enableSniffer=true&hostAddresses=localhost:" + ES_BASE_HTTP_PORT);
             }
         };
     }
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/BaseServerTestSupport.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/BaseServerTestSupport.java
index 181d0d2..2043b93 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/BaseServerTestSupport.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/BaseServerTestSupport.java
@@ -18,14 +18,21 @@ package org.apache.camel.component.file.remote;
 
 import org.apache.camel.test.AvailablePortFinder;
 import org.apache.camel.test.junit4.CamelTestSupport;
-import org.junit.BeforeClass;
+import org.junit.Before;
 
 public class BaseServerTestSupport extends CamelTestSupport {
-    protected static int port;
+    protected int port;
 
-    @BeforeClass
-    public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(21000);
+    private boolean portInitialized = false;
+
+    @Before
+    public void initPort() throws Exception {
+        if (!portInitialized) {
+            // call only once per test method (Some tests can call this method manually in setUp method,
+            // which is called before this if setUp method is overridden)
+            port = AvailablePortFinder.getNextAvailable();
+            portInitialized = true;
+        }
     }
 
     protected int getPort() {
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpServerTestSupport.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpServerTestSupport.java
index 488616a..c7006bf 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpServerTestSupport.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/FtpServerTestSupport.java
@@ -52,7 +52,7 @@ public abstract class FtpServerTestSupport extends BaseServerTestSupport {
         deleteDirectory(FTP_ROOT_DIR);
 
         canTest = false;
-
+        initPort();
         FtpServerFactory factory = createFtpServerFactory();
         if (factory != null) {
             ftpServer = factory.createServer();
@@ -103,7 +103,7 @@ public abstract class FtpServerTestSupport extends BaseServerTestSupport {
 
     protected FtpServerFactory createFtpServerFactory() throws Exception {
         assertTrue(USERS_FILE.exists());
-        assertTrue("Port number is not initialized in an expected range: " + BaseServerTestSupport.port, BaseServerTestSupport.port >= 21000);
+        assertTrue("Port number is not initialized in an expected range: " + getPort(), getPort() > 0);
 
         NativeFileSystemFactory fsf = new NativeFileSystemFactory();
         fsf.setCreateHome(true);
@@ -113,10 +113,10 @@ public abstract class FtpServerTestSupport extends BaseServerTestSupport {
         pumf.setPasswordEncryptor(new ClearTextPasswordEncryptor());
         pumf.setFile(USERS_FILE);
         UserManager userMgr = pumf.createUserManager();
-        
+
         ListenerFactory factory = new ListenerFactory();
-        factory.setPort(BaseServerTestSupport.port);
-        
+        factory.setPort(getPort());
+
         FtpServerFactory serverFactory = new FtpServerFactory();
         serverFactory.setUserManager(userMgr);
         serverFactory.setFileSystem(fsf);
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpECKeyFileConsumeTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpECKeyFileConsumeTest.java
index cb4ab0c..9137e8e 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpECKeyFileConsumeTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpECKeyFileConsumeTest.java
@@ -58,7 +58,7 @@ public class SftpECKeyFileConsumeTest extends SftpServerTestSupport {
             @Override
             public void configure() throws Exception {
                 from("sftp://localhost:" + getPort() + "/" + FTP_ROOT_DIR
-                    + "?username=admin&knownHostsFile=./src/test/resources/known_hosts&privateKeyFile=./src/test/resources/ec.pem&delay=10s&disconnect=true")
+                    + "?username=admin&knownHostsFile=" + getKnownHostsFile() + "&privateKeyFile=./src/test/resources/ec.pem&delay=10s&disconnect=true")
                     .routeId("foo").noAutoStartup()
                     .to("mock:result");
             }
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpFromSedaDeleteFileTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpFromSedaDeleteFileTest.java
index f1a57d6..6b562dd 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpFromSedaDeleteFileTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpFromSedaDeleteFileTest.java
@@ -32,7 +32,7 @@ public class SftpFromSedaDeleteFileTest extends SftpServerTestSupport {
 
     protected String getFtpUrl() {
         return "sftp://localhost:" + getPort() + "/" + FTP_ROOT_DIR
-                + "?username=admin&knownHostsFile=./src/test/resources/known_hosts&privateKeyFile=./src/test/resources/id_rsa"
+                + "?username=admin&knownHostsFile=" + getKnownHostsFile() + "&privateKeyFile=./src/test/resources/id_rsa"
                 + "&privateKeyPassphrase=secret&delay=500&disconnect=false&delete=true";
     }
 
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyFileConsumeTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyFileConsumeTest.java
index 41d9305..966922c 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyFileConsumeTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyFileConsumeTest.java
@@ -58,7 +58,7 @@ public class SftpKeyFileConsumeTest extends SftpServerTestSupport {
             @Override
             public void configure() throws Exception {
                 from("sftp://localhost:" + getPort() + "/" + FTP_ROOT_DIR
-                    + "?username=admin&knownHostsFile=./src/test/resources/known_hosts&privateKeyFile=./src/test/resources/id_rsa&privateKeyPassphrase=secret&delay=10s&disconnect=true")
+                    + "?username=admin&knownHostsFile=" + getKnownHostsFile() + "&privateKeyFile=./src/test/resources/id_rsa&privateKeyPassphrase=secret&delay=10s&disconnect=true")
                     .routeId("foo").noAutoStartup()
                     .to("mock:result");
             }
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairDSAConsumeTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairDSAConsumeTest.java
index 7b3479f..ebb6439 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairDSAConsumeTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairDSAConsumeTest.java
@@ -64,14 +64,6 @@ public class SftpKeyPairDSAConsumeTest extends SftpServerTestSupport {
         assertMockEndpointsSatisfied();
     }
 
-    private byte[] getBytesFromFile(String filename) throws IOException {
-        InputStream input;
-        input = new FileInputStream(new File(filename));
-        ByteArrayOutputStream output = new ByteArrayOutputStream();
-        IOHelper.copyAndCloseInput(input, output);
-        return output.toByteArray();
-    }
-
     @Override
     protected PublickeyAuthenticator getPublickeyAuthenticator() {
         return (username, key, session) -> key.equals(keyPair.getPublic());
@@ -80,7 +72,7 @@ public class SftpKeyPairDSAConsumeTest extends SftpServerTestSupport {
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
         context.getRegistry().bind("keyPair", keyPair);
-        context.getRegistry().bind("knownHosts", getBytesFromFile("./src/test/resources/known_hosts"));
+        context.getRegistry().bind("knownHosts", buildKnownHosts());
 
         return new RouteBuilder() {
             @Override
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairRSAConsumeTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairRSAConsumeTest.java
index f8b584a..3e93ae2 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairRSAConsumeTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyPairRSAConsumeTest.java
@@ -80,7 +80,7 @@ public class SftpKeyPairRSAConsumeTest extends SftpServerTestSupport {
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
         context.getRegistry().bind("keyPair", keyPair);
-        context.getRegistry().bind("knownHosts", getBytesFromFile("./src/test/resources/known_hosts"));
+        context.getRegistry().bind("knownHosts", buildKnownHosts());
 
         return new RouteBuilder() {
             @Override
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyUriConsumeTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyUriConsumeTest.java
index 10086ca..309377c 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyUriConsumeTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpKeyUriConsumeTest.java
@@ -50,7 +50,7 @@ public class SftpKeyUriConsumeTest extends SftpServerTestSupport {
             @Override
             public void configure() throws Exception {
                 from("sftp://localhost:" + getPort() + "/" + FTP_ROOT_DIR
-                        + "?username=admin&knownHostsUri=file:./src/test/resources/known_hosts&privateKeyUri=file:./src/test/resources/id_rsa&privateKeyPassphrase=secret&delay=10s&disconnect=true")
+                        + "?username=admin&knownHostsUri=file:" + getKnownHostsFile() + "&privateKeyUri=file:./src/test/resources/id_rsa&privateKeyPassphrase=secret&delay=10s&disconnect=true")
                     .routeId("foo").noAutoStartup()
                     .to("mock:result");
             }
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpServerTestSupport.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpServerTestSupport.java
index 2fd292d..aa79c8a 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpServerTestSupport.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpServerTestSupport.java
@@ -40,10 +40,15 @@ import org.junit.Before;
 public class SftpServerTestSupport extends BaseServerTestSupport {
 
     protected static final String FTP_ROOT_DIR = "target/res/home";
+    private static final String KNOWN_HOSTS = "[localhost]:%d ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDdfIWeSV4o68dRrKS"
+            + "zFd/Bk51E65UTmmSrmW0O1ohtzi6HzsDPjXgCtlTt3FqTcfFfI92IlTr4JWqC9UK1QT1ZTeng0MkPQmv68hDANHbt5CpETZHjW5q4OOgWhV"
+            + "vj5IyOC2NZHtKlJBkdsMAa15ouOOJLzBvAvbqOR/yUROsEiQ==";
     protected SshServer sshd;
     protected boolean canTest;
     protected String oldUserHome;
     protected boolean rootDirMode;
+    private String simulatedUserHome = "./target/user-home";
+    private String simulatedUserSsh = "./target/user-home/.ssh";
 
     @Override
     @Before
@@ -54,16 +59,14 @@ public class SftpServerTestSupport extends BaseServerTestSupport {
 
         System.setProperty("user.home", "target/user-home");
 
-        String simulatedUserHome = "target/user-home";
-        String simulatedUserSsh = "target/user-home/.ssh";
         deleteDirectory(simulatedUserHome);
         createDirectory(simulatedUserHome);
         createDirectory(simulatedUserSsh);
 
-        FileUtils.copyInputStreamToFile(getClass().getClassLoader().getResourceAsStream("known_hosts"), new File(simulatedUserSsh + "/known_hosts"));
-
         super.setUp();
 
+        FileUtils.writeByteArrayToFile(new File(simulatedUserSsh + "/known_hosts"), buildKnownHosts());
+
         setUpServer();
     }
 
@@ -140,4 +143,12 @@ public class SftpServerTestSupport extends BaseServerTestSupport {
             session.disconnect(4, "dummy");
         }
     }
+
+    protected byte[] buildKnownHosts() {
+        return String.format(KNOWN_HOSTS, port).getBytes();
+    }
+
+    protected String getKnownHostsFile() {
+        return simulatedUserSsh + "/known_hosts";
+    }
 }
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleConsumeThroughProxyTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleConsumeThroughProxyTest.java
index e376334..8f5c571 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleConsumeThroughProxyTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleConsumeThroughProxyTest.java
@@ -30,7 +30,7 @@ import org.littleshoot.proxy.ProxyAuthorizationHandler;
 
 public class SftpSimpleConsumeThroughProxyTest extends SftpServerTestSupport {
 
-    private final int proxyPort = AvailablePortFinder.getNextAvailable(25000);
+    private final int proxyPort = AvailablePortFinder.getNextAvailable();
     
     
     @Test
diff --git a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleProduceThroughProxyTest.java b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleProduceThroughProxyTest.java
index 01816a5..d4343b2 100644
--- a/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleProduceThroughProxyTest.java
+++ b/components/camel-ftp/src/test/java/org/apache/camel/component/file/remote/sftp/SftpSimpleProduceThroughProxyTest.java
@@ -30,7 +30,7 @@ import org.littleshoot.proxy.ProxyAuthorizationHandler;
 
 public class SftpSimpleProduceThroughProxyTest extends SftpServerTestSupport {
 
-    private final int proxyPort = AvailablePortFinder.getNextAvailable(25000);
+    private final int proxyPort = AvailablePortFinder.getNextAvailable();
 
     @Test
     public void testSftpSimpleProduceThroughProxy() throws Exception {
diff --git a/components/camel-ftp/src/test/resources/known_hosts b/components/camel-ftp/src/test/resources/known_hosts
index bf617c5..f1adcc3 100644
--- a/components/camel-ftp/src/test/resources/known_hosts
+++ b/components/camel-ftp/src/test/resources/known_hosts
@@ -1,2 +1 @@
-[localhost]:21000 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDdfIWeSV4o68dRrKSzFd/Bk51E65UTmmSrmW0O1ohtzi6HzsDPjXgCtlTt3FqTcfFfI92IlTr4JWqC9UK1QT1ZTeng0MkPQmv68hDANHbt5CpETZHjW5q4OOgWhVvj5IyOC2NZHtKlJBkdsMAa15ouOOJLzBvAvbqOR/yUROsEiQ==
-[localhost]:21001 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDdfIWeSV4o68dRrKSzFd/Bk51E65UTmmSrmW0O1ohtzi6HzsDPjXgCtlTt3FqTcfFfI92IlTr4JWqC9UK1QT1ZTeng0MkPQmv68hDANHbt5CpETZHjW5q4OOgWhVvj5IyOC2NZHtKlJBkdsMAa15ouOOJLzBvAvbqOR/yUROsEiQ==
+[localhost] ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDdfIWeSV4o68dRrKSzFd/Bk51E65UTmmSrmW0O1ohtzi6HzsDPjXgCtlTt3FqTcfFfI92IlTr4JWqC9UK1QT1ZTeng0MkPQmv68hDANHbt5CpETZHjW5q4OOgWhVvj5IyOC2NZHtKlJBkdsMAa15ouOOJLzBvAvbqOR/yUROsEiQ==
\ No newline at end of file
diff --git a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7TestSupport.java b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7TestSupport.java
index cd5e345..ae76813 100644
--- a/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7TestSupport.java
+++ b/components/camel-hl7/src/test/java/org/apache/camel/component/hl7/HL7TestSupport.java
@@ -26,7 +26,7 @@ public abstract class HL7TestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8888);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     protected static int getPort() {
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCustomComponentNameTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCustomComponentNameTest.java
index fe281e0..1d574bb 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCustomComponentNameTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpCustomComponentNameTest.java
@@ -34,7 +34,7 @@ public class HttpCustomComponentNameTest extends CamelTestSupport {
     public void testCustomName() throws Exception {
         context.start();
 
-        int port = AvailablePortFinder.getNextAvailable(24400);
+        int port = AvailablePortFinder.getNextAvailable();
 
         Component custom = new HttpComponent();
         context.addComponent("http-foo", custom);
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSessionTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSessionTest.java
index e77b203..51b3962 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSessionTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpProducerSessionTest.java
@@ -47,7 +47,7 @@ public class HttpProducerSessionTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initServer() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(24000);
+        port = AvailablePortFinder.getNextAvailable();
         localServer = new Server(new InetSocketAddress("127.0.0.1", port));
         ContextHandler contextHandler = new ContextHandler();
         contextHandler.setContextPath("/session");
diff --git a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsTwoComponentsSslContextParametersGetTest.java b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsTwoComponentsSslContextParametersGetTest.java
index 4df9ef6f..00e667f 100644
--- a/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsTwoComponentsSslContextParametersGetTest.java
+++ b/components/camel-http/src/test/java/org/apache/camel/component/http/HttpsTwoComponentsSslContextParametersGetTest.java
@@ -82,7 +82,7 @@ public class HttpsTwoComponentsSslContextParametersGetTest extends BaseHttpsTest
         context.addRoutes(new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                port2 = AvailablePortFinder.getNextAvailable(localServer.getLocalPort());
+                port2 = AvailablePortFinder.getNextAvailable();
 
                 from("direct:foo")
                         .to("https-foo://127.0.0.1:" + localServer.getLocalPort() + "/mail?x509HostnameVerifier=#x509HostnameVerifier&sslContextParameters=#sslContextParameters");
diff --git a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/BaseJettyTest.java b/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/BaseJettyTest.java
index 88d5a75..c50b3bd 100644
--- a/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/BaseJettyTest.java
+++ b/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/BaseJettyTest.java
@@ -39,9 +39,9 @@ public abstract class BaseJettyTest extends CamelTestSupport {
     @BeforeClass
     public static void initPort() throws Exception {
         // start from somewhere in the 23xxx range
-        port = AvailablePortFinder.getNextAvailable(23000);
+        port = AvailablePortFinder.getNextAvailable();
         // find another ports for proxy route test
-        port2 = AvailablePortFinder.getNextAvailable(24000);
+        port2 = AvailablePortFinder.getNextAvailable();
     }
 
     @Override
@@ -61,11 +61,11 @@ public abstract class BaseJettyTest extends CamelTestSupport {
     }
 
     protected int getNextPort() {
-        return AvailablePortFinder.getNextAvailable(port + counter.getAndIncrement());
+        return AvailablePortFinder.getNextAvailable();
     }
 
     protected int getNextPort(int startWithPort) {
-        return AvailablePortFinder.getNextAvailable(startWithPort);
+        return AvailablePortFinder.getNextAvailable();
     }
 
     public void setSSLProps(JettyHttpComponent jetty, String path, String keyStorePasswd, String keyPasswd) {
diff --git a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-https.xml b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-https.xml
index df959fb..604abf2 100644
--- a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-https.xml
+++ b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-https.xml
@@ -42,11 +42,6 @@
         <property name="targetMethod">
             <value>getNextAvailable</value>
         </property>
-        <property name="arguments">
-            <list>
-                <value>9000</value>
-            </list>
-        </property>
     </bean>
 
 
diff --git a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection-redelivery.xml b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection-redelivery.xml
index 7f9113b..4dc5e87 100644
--- a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection-redelivery.xml
+++ b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection-redelivery.xml
@@ -31,11 +31,6 @@
         <property name="targetMethod">
             <value>getNextAvailable</value>
         </property>
-        <property name="arguments">
-            <list>
-                <value>9000</value>
-            </list>
-        </property>
     </bean>
 
 
diff --git a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection.xml b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection.xml
index 6cee164..8c6fe59 100644
--- a/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection.xml
+++ b/components/camel-jetty/src/test/resources/org/apache/camel/component/jetty/jetty-noconnection.xml
@@ -32,11 +32,6 @@
         <property name="targetMethod">
             <value>getNextAvailable</value>
         </property>
-        <property name="arguments">
-            <list>
-                <value>5000</value>
-            </list>
-        </property>
     </bean>
 
     <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
diff --git a/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRemoteTest.java b/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRemoteTest.java
index cf85d04..3999b2b 100644
--- a/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRemoteTest.java
+++ b/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRemoteTest.java
@@ -53,7 +53,7 @@ public class JMXRemoteTest extends SimpleBeanFixture {
 
     @Override
     protected void initServer() throws Exception {
-        int port = AvailablePortFinder.getNextAvailable(39000);
+        int port = AvailablePortFinder.getNextAvailable();
         registry = LocateRegistry.createRegistry(port);
 
         url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:" + port + "/" + DOMAIN);
diff --git a/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRobustRemoteConnectionTest.java b/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRobustRemoteConnectionTest.java
index 1c36237..2680cff 100644
--- a/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRobustRemoteConnectionTest.java
+++ b/components/camel-jmx/src/test/java/org/apache/camel/component/jmx/JMXRobustRemoteConnectionTest.java
@@ -55,7 +55,7 @@ public class JMXRobustRemoteConnectionTest extends SimpleBeanFixture {
     @Before
     @Override
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(39000);
+        port = AvailablePortFinder.getNextAvailable();
         url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:" + port + "/" + DOMAIN);
 
         initContext();
diff --git a/components/camel-jsch/src/test/java/org/apache/camel/component/scp/ScpServerTestSupport.java b/components/camel-jsch/src/test/java/org/apache/camel/component/scp/ScpServerTestSupport.java
index 7b7c3f4..7ca22ae 100644
--- a/components/camel-jsch/src/test/java/org/apache/camel/component/scp/ScpServerTestSupport.java
+++ b/components/camel-jsch/src/test/java/org/apache/camel/component/scp/ScpServerTestSupport.java
@@ -74,7 +74,7 @@ public abstract class ScpServerTestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(21000);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     @Override
diff --git a/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/BaseEmbeddedKafkaTest.java b/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/BaseEmbeddedKafkaTest.java
index 2a3bc10..f9e2b48 100644
--- a/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/BaseEmbeddedKafkaTest.java
+++ b/components/camel-kafka/src/test/java/org/apache/camel/component/kafka/BaseEmbeddedKafkaTest.java
@@ -35,12 +35,12 @@ public class BaseEmbeddedKafkaTest extends CamelTestSupport {
 
     @ClassRule
     public static EmbeddedZookeeper zookeeper = new EmbeddedZookeeper(
-            AvailablePortFinder.getNextAvailable(23000));
+            AvailablePortFinder.getNextAvailable());
 
     @ClassRule
     public static EmbeddedKafkaBroker kafkaBroker =
             new EmbeddedKafkaBroker(0,
-                    AvailablePortFinder.getNextAvailable(24000),
+                    AvailablePortFinder.getNextAvailable(),
                     zookeeper.getConnection(),
                     new Properties());
 
diff --git a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/BaseNettyTest.java b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/BaseNettyTest.java
index de4a7c2..e0183fe 100644
--- a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/BaseNettyTest.java
+++ b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/BaseNettyTest.java
@@ -45,32 +45,7 @@ public class BaseNettyTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        File file = new File("target/nettyport.txt");
-
-        if (!file.exists()) {
-            // start from somewhere in the 26xxx range
-            port = AvailablePortFinder.getNextAvailable(26000);
-        } else {
-            // read port number from file
-            String s = IOConverter.toString(file, null);
-            port = Integer.parseInt(s);
-            // use next free port
-            port = AvailablePortFinder.getNextAvailable(port + 1);
-        }
-
-    }
-
-    @AfterClass
-    public static void savePort() throws Exception {
-        File file = new File("target/nettyport.txt");
-
-        // save to file, do not append
-        FileOutputStream fos = new FileOutputStream(file, false);
-        try {
-            fos.write(String.valueOf(port).getBytes());
-        } finally {
-            fos.close();
-        }
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     @BeforeClass
@@ -115,7 +90,7 @@ public class BaseNettyTest extends CamelTestSupport {
     }
 
     protected int getNextPort() {
-        port = AvailablePortFinder.getNextAvailable(port + 1);
+        port = AvailablePortFinder.getNextAvailable();
         return port;
     }
 
diff --git a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpGetWithInvalidMessageTest.java b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpGetWithInvalidMessageTest.java
index f1e6f40..796dc40 100644
--- a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpGetWithInvalidMessageTest.java
+++ b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpGetWithInvalidMessageTest.java
@@ -33,7 +33,7 @@ import org.junit.Test;
 
 public class NettyHttpGetWithInvalidMessageTest extends CamelTestSupport {
     private static final String REQUEST_STRING = "user: Willem\n"
-        + "GET http://localhost:8101/test HTTP/1.1\n" + "another: value\n Host: localhost\n";
+        + "GET http://localhost:%s/test HTTP/1.1\n" + "another: value\n Host: localhost\n";
     private int port1;
 
     @BindToRegistry("string-decoder")
@@ -62,7 +62,7 @@ public class NettyHttpGetWithInvalidMessageTest extends CamelTestSupport {
 
     @Test
     public void testNettyHttpServer() throws Exception {
-        invokeService(8100);
+        invokeService(port1);
     }
 
     //@Test
@@ -74,7 +74,7 @@ public class NettyHttpGetWithInvalidMessageTest extends CamelTestSupport {
         Exchange out = template.request("netty:tcp://localhost:" + port + "?encoders=#encoders&decoders=#decoders&sync=true", new Processor() {
             @Override
             public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody(REQUEST_STRING);
+                exchange.getIn().setBody(String.format(REQUEST_STRING, port));
             }
         });
 
@@ -92,7 +92,7 @@ public class NettyHttpGetWithInvalidMessageTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                port1 = AvailablePortFinder.getNextAvailable(8100);
+                port1 = AvailablePortFinder.getNextAvailable();
 
                // set up a netty http proxy
                 from("netty-http:http://localhost:" + port1 + "/test")
diff --git a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpProducerHeadersTest.java b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpProducerHeadersTest.java
index 08bc05a..1814847 100644
--- a/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpProducerHeadersTest.java
+++ b/components/camel-netty-http/src/test/java/org/apache/camel/component/netty/http/NettyHttpProducerHeadersTest.java
@@ -74,7 +74,7 @@ public class NettyHttpProducerHeadersTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                port = AvailablePortFinder.getNextAvailable(8000);
+                port = AvailablePortFinder.getNextAvailable();
 
                 from("netty-http:http://localhost:" + port + "?matchOnUriPrefix=true")
                     .setBody(simple("${header." + Exchange.HTTP_URI + "}"));
diff --git a/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpBasicAuthTest.xml b/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpBasicAuthTest.xml
index 76f55cf..d0836f3 100644
--- a/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpBasicAuthTest.xml
+++ b/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpBasicAuthTest.xml
@@ -31,11 +31,6 @@
     <property name="targetMethod">
       <value>getNextAvailable</value>
     </property>
-    <property name="arguments">
-      <list>
-        <value>9000</value>
-      </list>
-    </property>
   </bean>
 
   <bean id="constraint" class="org.apache.camel.component.netty.http.SecurityConstraintMapping">
diff --git a/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpSSLTest.xml b/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpSSLTest.xml
index a62abb4..7a44ad1 100644
--- a/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpSSLTest.xml
+++ b/components/camel-netty-http/src/test/resources/org/apache/camel/component/netty/http/SpringNettyHttpSSLTest.xml
@@ -32,11 +32,6 @@
     <property name="targetMethod">
       <value>getNextAvailable</value>
     </property>
-    <property name="arguments">
-      <list>
-        <value>9000</value>
-      </list>
-    </property>
   </bean>
 
   <camel:sslContextParameters id="mySsl">
diff --git a/components/camel-netty/src/test/java/org/apache/camel/component/netty/BaseNettyTest.java b/components/camel-netty/src/test/java/org/apache/camel/component/netty/BaseNettyTest.java
index a4d8525..1d732a9 100644
--- a/components/camel-netty/src/test/java/org/apache/camel/component/netty/BaseNettyTest.java
+++ b/components/camel-netty/src/test/java/org/apache/camel/component/netty/BaseNettyTest.java
@@ -46,32 +46,7 @@ public class BaseNettyTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        File file = new File("target/nettyport.txt");
-
-        if (!file.exists()) {
-            // start from somewhere in the 25xxx range
-            port = AvailablePortFinder.getNextAvailable(25000);
-        } else {
-            // read port number from file
-            String s = IOConverter.toString(file, null);
-            port = Integer.parseInt(s);
-            // use next free port
-            port = AvailablePortFinder.getNextAvailable(port + 1);
-        }
-
-    }
-
-    @AfterClass
-    public static void savePort() throws Exception {
-        File file = new File("target/nettyport.txt");
-
-        // save to file, do not append
-        FileOutputStream fos = new FileOutputStream(file, false);
-        try {
-            fos.write(String.valueOf(port).getBytes());
-        } finally {
-            fos.close();
-        }
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     @BeforeClass
@@ -116,7 +91,7 @@ public class BaseNettyTest extends CamelTestSupport {
     }
 
     protected int getNextPort() {
-        port = AvailablePortFinder.getNextAvailable(port + 1);
+        port = AvailablePortFinder.getNextAvailable();
         return port;
     }
 
diff --git a/components/camel-pubnub/src/test/java/org/apache/camel/component/pubnub/PubNubTestBase.java b/components/camel-pubnub/src/test/java/org/apache/camel/component/pubnub/PubNubTestBase.java
index 9fff380..f44e3ca 100644
--- a/components/camel-pubnub/src/test/java/org/apache/camel/component/pubnub/PubNubTestBase.java
+++ b/components/camel-pubnub/src/test/java/org/apache/camel/component/pubnub/PubNubTestBase.java
@@ -34,7 +34,7 @@ import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options
 import static com.pubnub.api.enums.PNHeartbeatNotificationOptions.NONE;
 
 public class PubNubTestBase extends CamelTestSupport {
-    private final int port = AvailablePortFinder.getNextAvailable(3344);
+    private final int port = AvailablePortFinder.getNextAvailable();
 
     @BindToRegistry("pubnub")
     private PubNub pubnub = createPubNubInstance();
diff --git a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletProducerGetJettyServerTest.java b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletProducerGetJettyServerTest.java
index e756d65..73e2b8b 100644
--- a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletProducerGetJettyServerTest.java
+++ b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletProducerGetJettyServerTest.java
@@ -38,7 +38,7 @@ public class RestRestletProducerGetJettyServerTest extends CamelTestSupport {
             @Override
             public void configure() throws Exception {
                 // find free port
-                int port = AvailablePortFinder.getNextAvailable(22400);
+                int port = AvailablePortFinder.getNextAvailable();
 
                 // configure to use restlet on localhost with the given port
                 restConfiguration().component("restlet").host("localhost").port(port);
diff --git a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletRouterIdTest.java b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletRouterIdTest.java
index d693dbf..c9d8862 100644
--- a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletRouterIdTest.java
+++ b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestRestletRouterIdTest.java
@@ -33,7 +33,7 @@ public class RestRestletRouterIdTest extends CamelTestSupport {
 
     @BindToRegistry("setId")
     private static final Processor SET_ROUTE_ID_AS_BODY = exchange -> exchange.getIn().setBody(exchange.getFromRouteId());
-    private int port = AvailablePortFinder.getNextAvailable(6000);
+    private int port = AvailablePortFinder.getNextAvailable();
 
     @Override
     protected RoutesBuilder createRouteBuilder() throws Exception {
diff --git a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletSetBodyTest.java b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletSetBodyTest.java
index 3cc463e..97ee3ae 100644
--- a/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletSetBodyTest.java
+++ b/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletSetBodyTest.java
@@ -37,7 +37,7 @@ import static org.hamcrest.CoreMatchers.equalTo;
 import static org.junit.Assume.assumeThat;
 
 public class RestletSetBodyTest extends RestletTestSupport {
-    protected static int portNum2 =  AvailablePortFinder.getNextAvailable(4000);
+    protected static int portNum2 =  AvailablePortFinder.getNextAvailable();
 
     @Test
     public void testSetBody() throws Exception {
diff --git a/components/camel-sip/src/test/java/org/apache/camel/component/sip/PublishSubscribeTest.java b/components/camel-sip/src/test/java/org/apache/camel/component/sip/PublishSubscribeTest.java
index b9d7d75..2ceecd1 100644
--- a/components/camel-sip/src/test/java/org/apache/camel/component/sip/PublishSubscribeTest.java
+++ b/components/camel-sip/src/test/java/org/apache/camel/component/sip/PublishSubscribeTest.java
@@ -47,9 +47,9 @@ public class PublishSubscribeTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port1 = AvailablePortFinder.getNextAvailable(17189);
-        port2 = AvailablePortFinder.getNextAvailable(port1 + 1);
-        port3 = AvailablePortFinder.getNextAvailable(port2 + 1);
+        port1 = AvailablePortFinder.getNextAvailable();
+        port2 = AvailablePortFinder.getNextAvailable();
+        port3 = AvailablePortFinder.getNextAvailable();
 
         super.setUp();
     }
diff --git a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/support/JmsTestSupport.java b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/support/JmsTestSupport.java
index 171449b..588e645 100644
--- a/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/support/JmsTestSupport.java
+++ b/components/camel-sjms/src/test/java/org/apache/camel/component/sjms/support/JmsTestSupport.java
@@ -79,14 +79,14 @@ public class JmsTestSupport extends CamelTestSupport {
                 host = properties.getProperty("amq.host");
                 externalAmq = true;
             } else {
-                port = AvailablePortFinder.getNextAvailable(33333);
+                port = AvailablePortFinder.getNextAvailable();
                 host = "localhost";
             }
         }
         brokerUri = String.format("tcp://%s:%s", host, port);
         if (!externalAmq) {
             broker = new BrokerService();
-            broker.getManagementContext().setConnectorPort(AvailablePortFinder.getNextAvailable(port + 1));
+            broker.getManagementContext().setConnectorPort(AvailablePortFinder.getNextAvailable());
             configureBroker(broker);
             startBroker();
         }
diff --git a/components/camel-sjms2/src/test/java/org/apache/camel/component/sjms2/support/Jms2TestSupport.java b/components/camel-sjms2/src/test/java/org/apache/camel/component/sjms2/support/Jms2TestSupport.java
index a4cf013..00aa0bb 100644
--- a/components/camel-sjms2/src/test/java/org/apache/camel/component/sjms2/support/Jms2TestSupport.java
+++ b/components/camel-sjms2/src/test/java/org/apache/camel/component/sjms2/support/Jms2TestSupport.java
@@ -75,7 +75,7 @@ public class Jms2TestSupport extends CamelTestSupport {
     protected void doPreSetup() throws Exception {
         broker = new EmbeddedJMS();
         deleteDirectory("target/data");
-        port = AvailablePortFinder.getNextAvailable(33333);
+        port = AvailablePortFinder.getNextAvailable();
         brokerUri = "tcp://localhost:" + port;
         configureBroker(this.broker);
         startBroker();
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
index ac9f6e7..6ba0fb1 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
@@ -28,8 +28,8 @@ public abstract class SolrTestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8999);
-        httpsPort = AvailablePortFinder.getNextAvailable(8999);
+        port = AvailablePortFinder.getNextAvailable();
+        httpsPort = AvailablePortFinder.getNextAvailable();
         //TODO : add test for TLSv1.3
         System.setProperty("jdk.tls.client.protocols", "TLSv1.2");
         System.setProperty("jdk.tls.server.protocols", "TLSv1.2");
diff --git a/components/camel-spark-rest/src/test/java/org/apache/camel/component/sparkrest/BaseSparkTest.java b/components/camel-spark-rest/src/test/java/org/apache/camel/component/sparkrest/BaseSparkTest.java
index 4821cec..1cede99 100644
--- a/components/camel-spark-rest/src/test/java/org/apache/camel/component/sparkrest/BaseSparkTest.java
+++ b/components/camel-spark-rest/src/test/java/org/apache/camel/component/sparkrest/BaseSparkTest.java
@@ -31,7 +31,7 @@ public abstract class BaseSparkTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(25500);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
         Thread.sleep(200);
     }
diff --git a/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java b/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java
index 1957451..84d244d 100644
--- a/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java
+++ b/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java
@@ -29,7 +29,7 @@ public class SshComponentTestSupport extends CamelTestSupport {
 
     @Override
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(22000);
+        port = AvailablePortFinder.getNextAvailable();
 
         sshd = SshServer.setUpDefaultServer();
         sshd.setPort(port);
diff --git a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompBaseTest.java b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompBaseTest.java
index c0899bf..9093258 100644
--- a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompBaseTest.java
+++ b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompBaseTest.java
@@ -75,7 +75,7 @@ public abstract class StompBaseTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(61613);
+        port = AvailablePortFinder.getNextAvailable();
 
         try {
             brokerService = new BrokerService();
diff --git a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompConsumerTest.java b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompConsumerTest.java
index 788a41e..7d19a20 100644
--- a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompConsumerTest.java
+++ b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompConsumerTest.java
@@ -63,7 +63,7 @@ public class StompConsumerTest extends StompBaseTest {
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
             public void configure() {
-                from("stomp:test")
+                fromF("stomp:test?brokerURL=tcp://localhost:%s", getPort())
                         .transform(body().convertToString())
                         .to("mock:result");
             }
diff --git a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompProducerTest.java b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompProducerTest.java
index 0703caf..92b9173 100644
--- a/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompProducerTest.java
+++ b/components/camel-stomp/src/test/java/org/apache/camel/component/stomp/StompProducerTest.java
@@ -92,7 +92,7 @@ public class StompProducerTest extends StompBaseTest {
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
             public void configure() {
-                from("direct:foo").to("stomp:test");
+                from("direct:foo").toF("stomp:test?brokerURL=tcp://localhost:%s", getPort());
             }
         };
     }
diff --git a/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringMinaTest.java b/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringMinaTest.java
index 330fc9f..d3b7a09 100644
--- a/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringMinaTest.java
+++ b/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringMinaTest.java
@@ -37,7 +37,7 @@ public class SyslogSpringMinaTest extends CamelSpringTestSupport {
 
     @BeforeClass
     public static void initPort() {
-        serverPort = AvailablePortFinder.getNextAvailable(3000);
+        serverPort = AvailablePortFinder.getNextAvailable();
         System.setProperty("server-port", new Integer(serverPort).toString());
     }
 
diff --git a/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringNettyTest.java b/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringNettyTest.java
index 7a008ca..df2859e 100644
--- a/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringNettyTest.java
+++ b/components/camel-syslog/src/test/java/org/apache/camel/component/syslog/SyslogSpringNettyTest.java
@@ -36,7 +36,7 @@ public class SyslogSpringNettyTest extends CamelSpringTestSupport {
 
     @BeforeClass
     public static void initPort() {
-        serverPort = AvailablePortFinder.getNextAvailable(4000);
+        serverPort = AvailablePortFinder.getNextAvailable();
         System.setProperty("server-port", new Integer(serverPort).toString());
     }
     
diff --git a/components/camel-test-junit5/src/main/java/org/apache/camel/test/AvailablePortFinder.java b/components/camel-test-junit5/src/main/java/org/apache/camel/test/AvailablePortFinder.java
index 602bea6..9861ce7 100644
--- a/components/camel-test-junit5/src/main/java/org/apache/camel/test/AvailablePortFinder.java
+++ b/components/camel-test-junit5/src/main/java/org/apache/camel/test/AvailablePortFinder.java
@@ -17,10 +17,9 @@
 package org.apache.camel.test;
 
 import java.io.IOException;
-import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
 import java.net.ServerSocket;
-import java.util.NoSuchElementException;
-import java.util.concurrent.atomic.AtomicInteger;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -30,141 +29,30 @@ import org.slf4j.LoggerFactory;
  */
 public final class AvailablePortFinder {
 
-    /**
-     * The minimum server currentMinPort number for IPv4. Set at 1100 to avoid
-     * returning privileged currentMinPort numbers.
-     */
-    public static final int MIN_PORT_NUMBER = 1100;
-
-    /**
-     * The maximum server currentMinPort number for IPv4.
-     */
-    public static final int MAX_PORT_NUMBER = 65535;
-
     private static final Logger LOG = LoggerFactory.getLogger(AvailablePortFinder.class);
 
     /**
-     * We'll hold open the lowest port in this process so parallel processes
-     * won't use the same block of ports. They'll go up to the next block.
-     */
-    private static final ServerSocket LOCK;
-
-    /**
-     * Incremented to the next lowest available port when getNextAvailable() is
-     * called.
-     */
-    private static AtomicInteger currentMinPort = new AtomicInteger(MIN_PORT_NUMBER);
-
-    /**
      * Creates a new instance.
      */
     private AvailablePortFinder() {
         // Do nothing
     }
 
-    static {
-        int port = MIN_PORT_NUMBER;
-        ServerSocket serverSocker = null;
-
-        while (serverSocker == null) {
-            try {
-                serverSocker = new ServerSocket(port);
-            } catch (Exception e) {
-                serverSocker = null;
-                port += 200;
-            }
-        }
-        LOCK = serverSocker;
-        Runtime.getRuntime().addShutdownHook(new Thread() {
-            public void run() {
-                try {
-                    LOCK.close();
-                } catch (Exception ex) {
-                    // ignore
-                }
-            }
-        });
-        currentMinPort.set(port + 1);
-    }
-
-    /**
-     * Gets the next available port starting at the lowest number. This is the
-     * preferred method to use. The port return is immediately marked in use and
-     * doesn't rely on the caller actually opening the port.
-     *
-     * @throws IllegalArgumentException is thrown if the port number is out of
-     *             range
-     * @throws NoSuchElementException if there are no ports available
-     * @return the available port
-     */
-    public static synchronized int getNextAvailable() {
-        int next = getNextAvailable(currentMinPort.get());
-        currentMinPort.set(next + 1);
-        return next;
-    }
-
     /**
-     * Gets the next available port starting at a given from port.
+     * Gets the next available port.
      *
-     * @param fromPort the from port to scan for availability
-     * @throws IllegalArgumentException is thrown if the port number is out of
-     *             range
-     * @throws NoSuchElementException if there are no ports available
+     * @throws IllegalStateException if there are no ports available
      * @return the available port
      */
-    public static synchronized int getNextAvailable(int fromPort) {
-        if (fromPort < currentMinPort.get() || fromPort > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("From port number not in valid range: " + fromPort);
-        }
-
-        for (int currentPort = fromPort; currentPort <= MAX_PORT_NUMBER; currentPort++) {
-            if (available(currentPort)) {
-                LOG.info("getNextAvailable({}) -> {}", fromPort, currentPort);
-                return currentPort;
-            }
-        }
-
-        throw new NoSuchElementException("Could not find an available port above " + fromPort);
-    }
-
-    /**
-     * Checks to see if a specific port is available.
-     *
-     * @param port the port number to check for availability
-     * @return <tt>true</tt> if the port is available, or <tt>false</tt> if not
-     * @throws IllegalArgumentException is thrown if the port number is out of
-     *             range
-     */
-    public static boolean available(int port) throws IllegalArgumentException {
-        if (port < currentMinPort.get() || port > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("Invalid start currentMinPort: " + port);
-        }
-
-        ServerSocket serverSocket = null;
-        DatagramSocket datagramSocket = null;
-        try {
-            serverSocket = new ServerSocket(port);
-            serverSocket.setReuseAddress(true);
-            datagramSocket = new DatagramSocket(port);
-            datagramSocket.setReuseAddress(true);
-            return true;
+    public static int getNextAvailable() {
+        try (ServerSocket ss = new ServerSocket()) {
+            ss.setReuseAddress(true);
+            ss.bind(new InetSocketAddress((InetAddress) null, 0), 1);
+            int port = ss.getLocalPort();
+            LOG.info("getNextAvailable() -> {}", port);
+            return port;
         } catch (IOException e) {
-            // Do nothing
-        } finally {
-            if (datagramSocket != null) {
-                datagramSocket.close();
-            }
-
-            if (serverSocket != null) {
-                try {
-                    serverSocket.close();
-                } catch (IOException e) {
-                    /* should not be thrown */
-                }
-            }
+            throw new IllegalStateException("Cannot find free port", e);
         }
-
-        return false;
     }
-
-}
+}
\ No newline at end of file
diff --git a/components/camel-test-junit5/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java b/components/camel-test-junit5/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
index 365831d..2356bfd 100644
--- a/components/camel-test-junit5/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
+++ b/components/camel-test-junit5/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
@@ -16,6 +16,10 @@
  */
 package org.apache.camel.test;
 
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
+import java.net.MulticastSocket;
 import java.net.ServerSocket;
 
 import org.junit.jupiter.api.Test;
@@ -27,42 +31,32 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 public class AvailablePortFinderTest {
 
     @Test
-    public void getNextAvailablePort() throws Exception {
+    public void testNotAvailableTcpPort() throws Exception {
         int p1 = AvailablePortFinder.getNextAvailable();
+        ServerSocket socket = new ServerSocket(p1);
         int p2 = AvailablePortFinder.getNextAvailable();
         assertFalse(p1 == p2, "Port " + p1 + " Port2 " + p2);
+        socket.close();
     }
 
     @Test
-    public void testGetNextAvailablePortInt() throws Exception {
-        int p1 = AvailablePortFinder.getNextAvailable(9123);
-        int p2 = AvailablePortFinder.getNextAvailable(9123);
-        // these calls only check availability but don't mark the port as in
-        // use.
-        assertEquals(p1, p2);
-    }
-
-    @Test
-    public void testNotAvailablePort() throws Exception {
-        int p1 = AvailablePortFinder.getNextAvailable(11000);
-        ServerSocket socket = new ServerSocket(p1);
-        int p2 = AvailablePortFinder.getNextAvailable(p1);
+    public void testNotAvailableUdpPort() throws Exception {
+        int p1 = AvailablePortFinder.getNextAvailable();
+        DatagramSocket socket = new DatagramSocket(p1);
+        int p2 = AvailablePortFinder.getNextAvailable();
         assertFalse(p1 == p2, "Port " + p1 + " Port2 " + p2);
         socket.close();
     }
 
     @Test
-    public void getMinOutOfRangePort() throws Exception {
-        assertThrows(IllegalArgumentException.class, () -> {
-            AvailablePortFinder.getNextAvailable(AvailablePortFinder.MIN_PORT_NUMBER - 1);
-        });
-    }
-
-    @Test
-    public void getMaxOutOfRangePort() throws Exception {
-        assertThrows(IllegalArgumentException.class, () -> {
-            AvailablePortFinder.getNextAvailable(AvailablePortFinder.MAX_PORT_NUMBER + 1);
-        });
+    public void testNotAvailableMulticastPort() throws Exception {
+        int p1 = AvailablePortFinder.getNextAvailable();
+        MulticastSocket socket = new MulticastSocket(null);
+        socket.setReuseAddress(false); // true is default for MulticastSocket, we wan to fail if port is occupied
+        socket.bind(new InetSocketAddress(InetAddress.getLocalHost(), p1));
+        int p2 = AvailablePortFinder.getNextAvailable();
+        assertFalse(p1 == p2, "Port " + p1 + " Port2 " + p2);
+        socket.close();
     }
 
 }
diff --git a/components/camel-test/src/main/java/org/apache/camel/test/AvailablePortFinder.java b/components/camel-test/src/main/java/org/apache/camel/test/AvailablePortFinder.java
index 310af44..9861ce7 100644
--- a/components/camel-test/src/main/java/org/apache/camel/test/AvailablePortFinder.java
+++ b/components/camel-test/src/main/java/org/apache/camel/test/AvailablePortFinder.java
@@ -17,10 +17,9 @@
 package org.apache.camel.test;
 
 import java.io.IOException;
-import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
 import java.net.ServerSocket;
-import java.util.NoSuchElementException;
-import java.util.concurrent.atomic.AtomicInteger;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -30,138 +29,30 @@ import org.slf4j.LoggerFactory;
  */
 public final class AvailablePortFinder {
 
-    /**
-     * The minimum server currentMinPort number for IPv4.
-     * Set at 1100 to avoid returning privileged currentMinPort numbers.
-     */
-    public static final int MIN_PORT_NUMBER = 1100;
-
-    /**
-     * The maximum server currentMinPort number for IPv4.
-     */
-    public static final int MAX_PORT_NUMBER = 65535;
-
     private static final Logger LOG = LoggerFactory.getLogger(AvailablePortFinder.class);
 
     /**
-     * We'll hold open the lowest port in this process
-     * so parallel processes won't use the same block
-     * of ports.   They'll go up to the next block.
-     */
-    private static final ServerSocket LOCK;
-
-    /**
-     * Incremented to the next lowest available port when getNextAvailable() is called.
-     */
-    private static AtomicInteger currentMinPort = new AtomicInteger(MIN_PORT_NUMBER);
-
-    /**
      * Creates a new instance.
      */
     private AvailablePortFinder() {
         // Do nothing
     }
-    
-    static {
-        int port = MIN_PORT_NUMBER;
-        ServerSocket ss = null;
-
-        while (ss == null) {
-            try {
-                ss = new ServerSocket(port);
-            } catch (Exception e) {
-                ss = null;
-                port += 200;
-            }
-        } 
-        LOCK = ss;
-        Runtime.getRuntime().addShutdownHook(new Thread() {
-            public void run() {
-                try {
-                    LOCK.close();
-                } catch (Exception ex) {
-                    //ignore
-                }
-            }
-        });
-        currentMinPort.set(port + 1);
-    }
-
-    /**
-     * Gets the next available port starting at the lowest number. This is the preferred
-     * method to use. The port return is immediately marked in use and doesn't rely on the caller actually opening
-     * the port.
-     *
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     * @throws NoSuchElementException if there are no ports available
-     * @return the available port
-     */
-    public static synchronized int getNextAvailable() {
-        int next = getNextAvailable(currentMinPort.get());
-        currentMinPort.set(next + 1);
-        return next;
-    }
 
     /**
-     * Gets the next available port starting at a given from port.
+     * Gets the next available port.
      *
-     * @param fromPort the from port to scan for availability
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     * @throws NoSuchElementException if there are no ports available
+     * @throws IllegalStateException if there are no ports available
      * @return the available port
      */
-    public static synchronized int getNextAvailable(int fromPort) {
-        if (fromPort < currentMinPort.get() || fromPort > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("From port number not in valid range: " + fromPort);
-        }
-
-        for (int i = fromPort; i <= MAX_PORT_NUMBER; i++) {
-            if (available(i)) {
-                LOG.info("getNextAvailable({}) -> {}", fromPort, i);
-                return i;
-            }
-        }
-
-        throw new NoSuchElementException("Could not find an available port above " + fromPort);
-    }
-
-    /**
-     * Checks to see if a specific port is available.
-     *
-     * @param port the port number to check for availability
-     * @return <tt>true</tt> if the port is available, or <tt>false</tt> if not
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     */
-    public static boolean available(int port) throws IllegalArgumentException {
-        if (port < currentMinPort.get() || port > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("Invalid start currentMinPort: " + port);
-        }
-
-        ServerSocket ss = null;
-        DatagramSocket ds = null;
-        try {
-            ss = new ServerSocket(port);
+    public static int getNextAvailable() {
+        try (ServerSocket ss = new ServerSocket()) {
             ss.setReuseAddress(true);
-            ds = new DatagramSocket(port);
-            ds.setReuseAddress(true);
-            return true;
+            ss.bind(new InetSocketAddress((InetAddress) null, 0), 1);
+            int port = ss.getLocalPort();
+            LOG.info("getNextAvailable() -> {}", port);
+            return port;
         } catch (IOException e) {
-            // Do nothing
-        } finally {
-            if (ds != null) {
-                ds.close();
-            }
-
-            if (ss != null) {
-                try {
-                    ss.close();
-                } catch (IOException e) {
-                    /* should not be thrown */
-                }
-            }
+            throw new IllegalStateException("Cannot find free port", e);
         }
-
-        return false;
     }
-
-}
+}
\ No newline at end of file
diff --git a/components/camel-test/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java b/components/camel-test/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
index 3e2a236..75b6010 100644
--- a/components/camel-test/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
+++ b/components/camel-test/src/test/java/org/apache/camel/test/AvailablePortFinderTest.java
@@ -16,6 +16,10 @@
  */
 package org.apache.camel.test;
 
+import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
+import java.net.MulticastSocket;
 import java.net.ServerSocket;
 
 import org.junit.Assert;
@@ -24,38 +28,32 @@ import org.junit.Test;
 public class AvailablePortFinderTest {
 
     @Test
-    public void getNextAvailablePort() throws Exception {
+    public void testNotAvailableTcpPort() throws Exception {
         int p1 = AvailablePortFinder.getNextAvailable();
+        ServerSocket socket = new ServerSocket(p1);
         int p2 = AvailablePortFinder.getNextAvailable();
         Assert.assertFalse("Port " + p1 + " Port2 " + p2, p1 == p2);
+        socket.close();
     }
 
     @Test
-    public void testGetNextAvailablePortInt() throws Exception {
-        int p1 = AvailablePortFinder.getNextAvailable(9123);
-        int p2 = AvailablePortFinder.getNextAvailable(9123);
-        // these calls only check availability but don't mark the port as in use.
-        Assert.assertEquals(p1, p2);
+    public void testNotAvailableUdpPort() throws Exception {
+        int p1 = AvailablePortFinder.getNextAvailable();
+        DatagramSocket socket = new DatagramSocket(p1);
+        int p2 = AvailablePortFinder.getNextAvailable();
+        Assert.assertFalse("Port " + p1 + " Port2 " + p2, p1 == p2);
+        socket.close();
     }
 
-
     @Test
-    public void testNotAvailablePort() throws Exception {
-        int p1 = AvailablePortFinder.getNextAvailable(11000);
-        ServerSocket socket = new ServerSocket(p1);
-        int p2 = AvailablePortFinder.getNextAvailable(p1);
+    public void testNotAvailableMulticastPort() throws Exception {
+        int p1 = AvailablePortFinder.getNextAvailable();
+        MulticastSocket socket = new MulticastSocket(null);
+        socket.setReuseAddress(false); // true is default for MulticastSocket, we wan to fail if port is occupied
+        socket.bind(new InetSocketAddress(InetAddress.getLocalHost(), p1));
+        int p2 = AvailablePortFinder.getNextAvailable();
         Assert.assertFalse("Port " + p1 + " Port2 " + p2, p1 == p2);
         socket.close();
     }
 
-    @Test (expected = IllegalArgumentException.class)
-    public void getMinOutOfRangePort() throws Exception {
-        AvailablePortFinder.getNextAvailable(AvailablePortFinder.MIN_PORT_NUMBER - 1);
-    }
-
-    @Test (expected = IllegalArgumentException.class)
-    public void getMaxOutOfRangePort() throws Exception {
-        AvailablePortFinder.getNextAvailable(AvailablePortFinder.MAX_PORT_NUMBER + 1);
-    }
-
 }
diff --git a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/BaseUndertowTest.java b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/BaseUndertowTest.java
index d689037..7d2148a 100644
--- a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/BaseUndertowTest.java
+++ b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/BaseUndertowTest.java
@@ -36,8 +36,8 @@ public class BaseUndertowTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
-        port2 = AvailablePortFinder.getNextAvailable(9000);
+        port = AvailablePortFinder.getNextAvailable();
+        port2 = AvailablePortFinder.getNextAvailable();
     }
 
     protected static int getPort() {
@@ -65,10 +65,10 @@ public class BaseUndertowTest extends CamelTestSupport {
     }
 
     protected int getNextPort() {
-        return AvailablePortFinder.getNextAvailable(port + counter.getAndIncrement());
+        return AvailablePortFinder.getNextAvailable();
     }
 
     protected int getNextPort(int startWithPort) {
-        return AvailablePortFinder.getNextAvailable(startWithPort);
+        return AvailablePortFinder.getNextAvailable();
     }
 }
diff --git a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowHttpProducerSessionTest.java b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowHttpProducerSessionTest.java
index 00a4b10..8488519 100644
--- a/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowHttpProducerSessionTest.java
+++ b/components/camel-undertow/src/test/java/org/apache/camel/component/undertow/UndertowHttpProducerSessionTest.java
@@ -38,7 +38,7 @@ public class UndertowHttpProducerSessionTest extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(24000);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     @Test
diff --git a/components/camel-undertow/src/test/resources/SpringTest.xml b/components/camel-undertow/src/test/resources/SpringTest.xml
index 32177f9..6730454 100644
--- a/components/camel-undertow/src/test/resources/SpringTest.xml
+++ b/components/camel-undertow/src/test/resources/SpringTest.xml
@@ -43,11 +43,6 @@
         <property name="targetMethod">
             <value>getNextAvailable</value>
         </property>
-        <property name="arguments">
-            <list>
-                <value>8800</value>
-            </list>
-        </property>
     </bean>
 
     <bean id="accessLogReceiver" class="io.undertow.server.handlers.accesslog.JBossLoggingAccessLogReceiver"/>
diff --git a/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxBaseTestSupport.java b/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxBaseTestSupport.java
index e224584..0399584 100644
--- a/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxBaseTestSupport.java
+++ b/components/camel-vertx/src/test/java/org/apache/camel/component/vertx/VertxBaseTestSupport.java
@@ -26,7 +26,7 @@ public class VertxBaseTestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(24000);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     protected int getPort() {
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
index c65aef9..4cd8e0e 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketClientCamelRouteTest.java
@@ -42,7 +42,7 @@ public class WebsocketClientCamelRouteTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
index b1b84fd..a865092 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketComponentRouteExampleTest.java
@@ -42,7 +42,7 @@ public class WebsocketComponentRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
index 3b3b0c5..cd8ee99 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketConsumerRouteTest.java
@@ -36,7 +36,7 @@ public class WebsocketConsumerRouteTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketEndpointConfigurationTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketEndpointConfigurationTest.java
index abab8b9..ad622e6 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketEndpointConfigurationTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketEndpointConfigurationTest.java
@@ -41,7 +41,7 @@ public class WebsocketEndpointConfigurationTest extends CamelTestSupport {
 
     @Test
     public void testSetServletInitalparameters() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16330);
+        port = AvailablePortFinder.getNextAvailable();
         String uri = "websocket://localhost:" + port + "/bar?bufferSize=25000&maxIdleTime=3000&maxTextMessageSize=500&maxBinaryMessageSize=550";
         WebsocketEndpoint websocketEndpoint = (WebsocketEndpoint)context.getEndpoint(uri);
         WebsocketComponent component = websocketEndpoint.getComponent();
@@ -80,7 +80,7 @@ public class WebsocketEndpointConfigurationTest extends CamelTestSupport {
     @Test
     public void testSetServletNoMinThreadsNoMaxThreadsNoThreadPool() throws Exception {
         assumeTrue("At lease 18 CPUs available", 1 + Runtime.getRuntime().availableProcessors() * 2 >= 19);
-        port = AvailablePortFinder.getNextAvailable(16331);
+        port = AvailablePortFinder.getNextAvailable();
         String uri = "websocket://localhost:" + port + "/bar?bufferSize=25000&maxIdleTime=3000";
         WebsocketEndpoint websocketEndpoint = (WebsocketEndpoint)context.getEndpoint(uri);
         WebsocketComponent component = websocketEndpoint.getComponent();
@@ -107,7 +107,7 @@ public class WebsocketEndpointConfigurationTest extends CamelTestSupport {
     
     @Test
     public void testSetServletThreadPool() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16332);
+        port = AvailablePortFinder.getNextAvailable();
         String uri = "websocket://localhost:" + port + "/bar?bufferSize=25000&maxIdleTime=3000";
         WebsocketEndpoint websocketEndpoint = (WebsocketEndpoint)context.getEndpoint(uri);
         WebsocketComponent component = websocketEndpoint.getComponent();
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
index 5fac1ed..786ee7b 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteExampleTest.java
@@ -48,7 +48,7 @@ public class WebsocketProducerRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
         received.clear();
         latch =  new CountDownLatch(1);
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
index 1e3c727..d18b1d7 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketProducerRouteRestartTest.java
@@ -47,7 +47,7 @@ public class WebsocketProducerRouteRestartTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
         received.clear();
         latch =  new CountDownLatch(1);
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
index 868f77d..0079dfa 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketRouteExampleTest.java
@@ -41,7 +41,7 @@ public class WebsocketRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
index 2853542..8cef209 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLClientAuthRouteExampleTest.java
@@ -57,7 +57,7 @@ public class WebsocketSSLClientAuthRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
 
         super.setUp();
     }
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
index da24a15..9816bcb 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextGlobalRouteExampleTest.java
@@ -59,7 +59,7 @@ public class WebsocketSSLContextGlobalRouteExampleTest extends CamelTestSupport
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16300);
+        port = AvailablePortFinder.getNextAvailable();
 
         uri = "websocket://" + server + ":" + port + "/test";
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
index 9f36fcf..7fb0b5d 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLContextInUriRouteExampleTest.java
@@ -59,7 +59,7 @@ public class WebsocketSSLContextInUriRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16300);
+        port = AvailablePortFinder.getNextAvailable();
 
         uri = "websocket://" + server + ":" + port + "/test?sslContextParameters=#sslContextParameters";
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
index 7cd608c..5c6877b 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketSSLRouteExampleTest.java
@@ -57,7 +57,7 @@ public class WebsocketSSLRouteExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
 
         super.setUp();
     }
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
index 19bdc41..09718e5 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketStaticTest.java
@@ -42,7 +42,7 @@ public class WebsocketStaticTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16200);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
index 0a7cd3a..9cf4076 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesExampleTest.java
@@ -40,7 +40,7 @@ public class WebsocketTwoRoutesExampleTest extends CamelTestSupport {
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16310);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
index 2ba0f67..96136ad 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest.java
@@ -40,7 +40,7 @@ public class WebsocketTwoRoutesToSIndividualAndBroadcastEndpointExampleTest exte
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16310);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
index 10b7cda..5fda655 100644
--- a/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
+++ b/components/camel-websocket/src/test/java/org/apache/camel/component/websocket/WebsocketTwoRoutesToSameEndpointExampleTest.java
@@ -39,7 +39,7 @@ public class WebsocketTwoRoutesToSameEndpointExampleTest extends CamelTestSuppor
     @Override
     @Before
     public void setUp() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(16310);
+        port = AvailablePortFinder.getNextAvailable();
         super.setUp();
     }
 
diff --git a/components/camel-xmpp/src/test/java/org/apache/camel/component/xmpp/EmbeddedXmppTestServer.java b/components/camel-xmpp/src/test/java/org/apache/camel/component/xmpp/EmbeddedXmppTestServer.java
index 20fa9ae..91e4e83 100644
--- a/components/camel-xmpp/src/test/java/org/apache/camel/component/xmpp/EmbeddedXmppTestServer.java
+++ b/components/camel-xmpp/src/test/java/org/apache/camel/component/xmpp/EmbeddedXmppTestServer.java
@@ -73,7 +73,7 @@ public final class EmbeddedXmppTestServer {
             xmppServer.setStorageProviderRegistry(providerRegistry);
 
             endpoint = new TCPEndpoint();
-            this.port = AvailablePortFinder.getNextAvailable(5222);
+            this.port = AvailablePortFinder.getNextAvailable();
             endpoint.setPort(port);
 
             xmppServer.addEndpoint(endpoint);
diff --git a/components/camel-zookeeper/src/test/java/org/apache/camel/component/zookeeper/ZooKeeperTestSupport.java b/components/camel-zookeeper/src/test/java/org/apache/camel/component/zookeeper/ZooKeeperTestSupport.java
index 5dc9509..cbc2bb2 100644
--- a/components/camel-zookeeper/src/test/java/org/apache/camel/component/zookeeper/ZooKeeperTestSupport.java
+++ b/components/camel-zookeeper/src/test/java/org/apache/camel/component/zookeeper/ZooKeeperTestSupport.java
@@ -65,7 +65,7 @@ public class ZooKeeperTestSupport extends CamelTestSupport {
         
     @BeforeClass
     public static void setupTestServer() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(39913);
+        port = AvailablePortFinder.getNextAvailable();
         
         LOG.info("Starting Zookeeper Test Infrastructure");
         server = new TestZookeeperServer(getServerPort(), clearServerData());
diff --git a/core/camel-management-impl/src/test/java/org/apache/camel/management/util/AvailablePortFinder.java b/core/camel-management-impl/src/test/java/org/apache/camel/management/util/AvailablePortFinder.java
index 04a14b2..9cf2a26 100644
--- a/core/camel-management-impl/src/test/java/org/apache/camel/management/util/AvailablePortFinder.java
+++ b/core/camel-management-impl/src/test/java/org/apache/camel/management/util/AvailablePortFinder.java
@@ -17,10 +17,9 @@
 package org.apache.camel.management.util;
 
 import java.io.IOException;
-import java.net.DatagramSocket;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
 import java.net.ServerSocket;
-import java.util.NoSuchElementException;
-import java.util.concurrent.atomic.AtomicInteger;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -30,138 +29,30 @@ import org.slf4j.LoggerFactory;
  */
 public final class AvailablePortFinder {
 
-    /**
-     * The minimum server currentMinPort number for IPv4.
-     * Set at 1100 to avoid returning privileged currentMinPort numbers.
-     */
-    public static final int MIN_PORT_NUMBER = 1100;
-
-    /**
-     * The maximum server currentMinPort number for IPv4.
-     */
-    public static final int MAX_PORT_NUMBER = 65535;
-
     private static final Logger LOG = LoggerFactory.getLogger(AvailablePortFinder.class);
 
     /**
-     * We'll hold open the lowest port in this process
-     * so parallel processes won't use the same block
-     * of ports.   They'll go up to the next block.
-     */
-    private static final ServerSocket LOCK;
-
-    /**
-     * Incremented to the next lowest available port when getNextAvailable() is called.
-     */
-    private static AtomicInteger currentMinPort = new AtomicInteger(MIN_PORT_NUMBER);
-
-    /**
      * Creates a new instance.
      */
     private AvailablePortFinder() {
         // Do nothing
     }
-    
-    static {
-        int port = MIN_PORT_NUMBER;
-        ServerSocket ss = null;
-
-        while (ss == null) {
-            try {
-                ss = new ServerSocket(port);
-            } catch (Exception e) {
-                ss = null;
-                port += 200;
-            }
-        } 
-        LOCK = ss;
-        Runtime.getRuntime().addShutdownHook(new Thread() {
-            public void run() {
-                try {
-                    LOCK.close();
-                } catch (Exception ex) {
-                    //ignore
-                }
-            }
-        });
-        currentMinPort.set(port + 1);
-    }
-
-    /**
-     * Gets the next available port starting at the lowest number. This is the preferred
-     * method to use. The port return is immediately marked in use and doesn't rely on the caller actually opening
-     * the port.
-     *
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     * @throws NoSuchElementException if there are no ports available
-     * @return the available port
-     */
-    public static synchronized int getNextAvailable() {
-        int next = getNextAvailable(currentMinPort.get());
-        currentMinPort.set(next + 1);
-        return next;
-    }
 
     /**
-     * Gets the next available port starting at a given from port.
+     * Gets the next available port.
      *
-     * @param fromPort the from port to scan for availability
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     * @throws NoSuchElementException if there are no ports available
+     * @throws IllegalStateException if there are no ports available
      * @return the available port
      */
-    public static synchronized int getNextAvailable(int fromPort) {
-        if (fromPort < currentMinPort.get() || fromPort > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("From port number not in valid range: " + fromPort);
-        }
-
-        for (int i = fromPort; i <= MAX_PORT_NUMBER; i++) {
-            if (available(i)) {
-                LOG.info("getNextAvailable({}) -> {}", fromPort, i);
-                return i;
-            }
-        }
-
-        throw new NoSuchElementException("Could not find an available port above " + fromPort);
-    }
-
-    /**
-     * Checks to see if a specific port is available.
-     *
-     * @param port the port number to check for availability
-     * @return <tt>true</tt> if the port is available, or <tt>false</tt> if not
-     * @throws IllegalArgumentException is thrown if the port number is out of range
-     */
-    public static boolean available(int port) throws IllegalArgumentException {
-        if (port < currentMinPort.get() || port > MAX_PORT_NUMBER) {
-            throw new IllegalArgumentException("Invalid start currentMinPort: " + port);
-        }
-
-        ServerSocket ss = null;
-        DatagramSocket ds = null;
-        try {
-            ss = new ServerSocket(port);
+    public static int getNextAvailable() {
+        try (ServerSocket ss = new ServerSocket()) {
             ss.setReuseAddress(true);
-            ds = new DatagramSocket(port);
-            ds.setReuseAddress(true);
-            return true;
+            ss.bind(new InetSocketAddress((InetAddress) null, 0), 1);
+            int port = ss.getLocalPort();
+            LOG.info("getNextAvailable() -> {}", port);
+            return port;
         } catch (IOException e) {
-            // Do nothing
-        } finally {
-            if (ds != null) {
-                ds.close();
-            }
-
-            if (ss != null) {
-                try {
-                    ss.close();
-                } catch (IOException e) {
-                    /* should not be thrown */
-                }
-            }
+            throw new IllegalStateException("Cannot find free port", e);
         }
-
-        return false;
     }
-
-}
+}
\ No newline at end of file
diff --git a/examples/camel-example-artemis-amqp-blueprint/src/test/java/org/apache/camel/example/artemis/amqp/ArtemisAmqpIntTest.java b/examples/camel-example-artemis-amqp-blueprint/src/test/java/org/apache/camel/example/artemis/amqp/ArtemisAmqpIntTest.java
index 1cbbf38..2152934 100644
--- a/examples/camel-example-artemis-amqp-blueprint/src/test/java/org/apache/camel/example/artemis/amqp/ArtemisAmqpIntTest.java
+++ b/examples/camel-example-artemis-amqp-blueprint/src/test/java/org/apache/camel/example/artemis/amqp/ArtemisAmqpIntTest.java
@@ -36,7 +36,7 @@ public class ArtemisAmqpIntTest extends CamelBlueprintTestSupport {
     @SuppressWarnings({"unchecked", "rawtypes"})
     protected String useOverridePropertiesWithConfigAdmin(Dictionary props) { 
         //obtain an available port
-        int port = AvailablePortFinder.getNextAvailable(9090);
+        int port = AvailablePortFinder.getNextAvailable();
 
         if (port != 9090) {
             //override the Netty port to use
diff --git a/tests/camel-itest-jms2/src/test/java/org/apache/camel/itest/jms2/BaseJms2TestSupport.java b/tests/camel-itest-jms2/src/test/java/org/apache/camel/itest/jms2/BaseJms2TestSupport.java
index d0f3005..4a13c20 100644
--- a/tests/camel-itest-jms2/src/test/java/org/apache/camel/itest/jms2/BaseJms2TestSupport.java
+++ b/tests/camel-itest-jms2/src/test/java/org/apache/camel/itest/jms2/BaseJms2TestSupport.java
@@ -71,7 +71,7 @@ public class BaseJms2TestSupport extends CamelTestSupport {
     protected void doPreSetup() throws Exception {
         broker = new EmbeddedJMS();
         deleteDirectory("target/data");
-        port = AvailablePortFinder.getNextAvailable(33333);
+        port = AvailablePortFinder.getNextAvailable();
         brokerUri = "tcp://localhost:" + port;
         configureBroker(this.broker);
         startBroker();
diff --git a/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/cxf/CamelCxfBeanInjectTest.java b/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/cxf/CamelCxfBeanInjectTest.java
index b752bfb..373d0d0 100644
--- a/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/cxf/CamelCxfBeanInjectTest.java
+++ b/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/cxf/CamelCxfBeanInjectTest.java
@@ -47,7 +47,7 @@ import org.osgi.framework.Constants;
 @Ignore("Flaky on CI server")
 public class CamelCxfBeanInjectTest extends AbstractFeatureTest {
 
-    private static final int PORT = AvailablePortFinder.getNextAvailable(30000);
+    private static final int PORT = AvailablePortFinder.getNextAvailable();
     private static final String ENDPOINT_ADDRESS = String.format(
         "http://localhost:%s/CamelCxfBeanInjectTest/router", PORT);
 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/ITestSupport.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/ITestSupport.java
index 03d506a..047fcb9 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/ITestSupport.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/ITestSupport.java
@@ -27,8 +27,8 @@ public final class ITestSupport {
 
     static final int PORT1 = AvailablePortFinder.getNextAvailable();
     static final int PORT2 = AvailablePortFinder.getNextAvailable();
-    static final int PORT3 = AvailablePortFinder.getNextAvailable(61616);
-    static final int PORT4 = AvailablePortFinder.getNextAvailable(61616);
+    static final int PORT3 = AvailablePortFinder.getNextAvailable();
+    static final int PORT4 = AvailablePortFinder.getNextAvailable();
 
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/async/HttpAsyncTestSupport.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/async/HttpAsyncTestSupport.java
index 46a2f5d..48dd0d1 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/async/HttpAsyncTestSupport.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/async/HttpAsyncTestSupport.java
@@ -26,7 +26,7 @@ public class HttpAsyncTestSupport extends CamelTestSupport {
 
     @BeforeClass
     public static void initPort() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(23000);
+        port = AvailablePortFinder.getNextAvailable();
     }
 
     protected int getPort() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpAndHttpRecipientListInterceptSendToEndpointIssueTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpAndHttpRecipientListInterceptSendToEndpointIssueTest.java
index a2ecda9..c370673 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpAndHttpRecipientListInterceptSendToEndpointIssueTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpAndHttpRecipientListInterceptSendToEndpointIssueTest.java
@@ -42,8 +42,8 @@ public class FtpAndHttpRecipientListInterceptSendToEndpointIssueTest extends Cam
     
     @BeforeClass
     public static void initPort() throws Exception {
-        ftpPort = AvailablePortFinder.getNextAvailable(20126);
-        httpPort = AvailablePortFinder.getNextAvailable(9193);
+        ftpPort = AvailablePortFinder.getNextAvailable();
+        httpPort = AvailablePortFinder.getNextAvailable();
     }
 
     @Test
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpXQueryTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpXQueryTest.java
index 1e2b7e3..7b0a38a 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpXQueryTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/FtpXQueryTest.java
@@ -43,7 +43,7 @@ public class FtpXQueryTest extends CamelTestSupport {
     
     @BeforeClass
     public static void initPort() throws Exception {
-        ftpPort = AvailablePortFinder.getNextAvailable(20127);
+        ftpPort = AvailablePortFinder.getNextAvailable();
     }
 
     @Test
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFileAntPathMatcherRemoteFileFilterTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFileAntPathMatcherRemoteFileFilterTest.java
index 8568b7e..f3a7d30 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFileAntPathMatcherRemoteFileFilterTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFileAntPathMatcherRemoteFileFilterTest.java
@@ -46,7 +46,7 @@ import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
 @ContextConfiguration
 public class SpringFileAntPathMatcherRemoteFileFilterTest extends AbstractJUnit4SpringContextTests {
    
-    private static int ftpPort = AvailablePortFinder.getNextAvailable(20123);
+    private static int ftpPort = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFtpEndpointTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFtpEndpointTest.java
index 8d60a67..be78b91 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFtpEndpointTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/ftp/SpringFtpEndpointTest.java
@@ -43,7 +43,7 @@ import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
  */
 @ContextConfiguration
 public class SpringFtpEndpointTest extends AbstractJUnit4SpringContextTests {
-    private static int ftpPort = AvailablePortFinder.getNextAvailable(20125);
+    private static int ftpPort = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelFileGreeterOneWayTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelFileGreeterOneWayTest.java
index e9982e1..955ecd5 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelFileGreeterOneWayTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelFileGreeterOneWayTest.java
@@ -37,7 +37,7 @@ public class CamelFileGreeterOneWayTest extends CamelSpringTestSupport {
     
     private static Endpoint endpoint;
     private static GreeterImpl greeterImpl;
-    private static int port = AvailablePortFinder.getNextAvailable(20000);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterConsumerTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterConsumerTest.java
index 2dceb88..52e398c 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterConsumerTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterConsumerTest.java
@@ -39,7 +39,7 @@ import static org.junit.Assert.fail;
 
 @ContextConfiguration
 public class CamelGreeterConsumerTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20001);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterFileDomTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterFileDomTest.java
index d770475..8daf26d 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterFileDomTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterFileDomTest.java
@@ -44,7 +44,7 @@ public class CamelGreeterFileDomTest extends AbstractJUnit4SpringContextTests {
         + "<soap:Body><greetMe xmlns=\"http://apache.org/hello_world_soap_http/types\">"
         + "<requestType>Willem</requestType></greetMe></soap:Body></soap:Envelope>";
     private static Endpoint endpoint;
-    private static int port = AvailablePortFinder.getNextAvailable(20003);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterTest.java
index 8b6e306..c627ec2 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CamelGreeterTest.java
@@ -46,7 +46,7 @@ public class CamelGreeterTest extends AbstractJUnit4SpringContextTests {
     
     private static Endpoint endpoint;
     
-    private static int port = AvailablePortFinder.getNextAvailable(20004);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CxfToJmsInOutTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CxfToJmsInOutTest.java
index 520c851..9f6ff30 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CxfToJmsInOutTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/CxfToJmsInOutTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertNotNull;
 
 @ContextConfiguration
 public class CxfToJmsInOutTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20005);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property place holder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JettyRecipientListCxfIssueTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JettyRecipientListCxfIssueTest.java
index 3e0c1b5..28aabc6 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JettyRecipientListCxfIssueTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JettyRecipientListCxfIssueTest.java
@@ -31,9 +31,9 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
  */
 public class JettyRecipientListCxfIssueTest extends CamelSpringTestSupport {
 
-    private static int port1 = AvailablePortFinder.getNextAvailable(20032);
-    private static int port2 = AvailablePortFinder.getNextAvailable(20043);
-    private static int port3 = AvailablePortFinder.getNextAvailable(20044);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
+    private static int port3 = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JmsToCxfInOutTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JmsToCxfInOutTest.java
index deacf31..6d994c0 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JmsToCxfInOutTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/JmsToCxfInOutTest.java
@@ -30,7 +30,7 @@ import static org.junit.Assert.assertNotNull;
 
 @ContextConfiguration
 public class JmsToCxfInOutTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20025);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property place holder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/MulticastCxfTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/MulticastCxfTest.java
index b2afbdf..61b4069 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/MulticastCxfTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/MulticastCxfTest.java
@@ -26,7 +26,7 @@ import org.springframework.context.support.AbstractApplicationContext;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 public class MulticastCxfTest extends CamelSpringTestSupport {
-    private static int port = AvailablePortFinder.getNextAvailable(20006);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxf2Test.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxf2Test.java
index f0823cf..7847142 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxf2Test.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxf2Test.java
@@ -30,8 +30,8 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 public class RecipientListCxf2Test extends CamelSpringTestSupport {
     
-    private static int port1 = AvailablePortFinder.getNextAvailable(20012);
-    private static int port2 = AvailablePortFinder.getNextAvailable(20023);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxfTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxfTest.java
index 6a0209f..2e5d22e 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxfTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/greeter/RecipientListCxfTest.java
@@ -30,8 +30,8 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 public class RecipientListCxfTest extends CamelSpringTestSupport {
     
-    private static int port1 = AvailablePortFinder.getNextAvailable(20032);
-    private static int port2 = AvailablePortFinder.getNextAvailable(20043);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts 
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/http/HttpTestServer.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/http/HttpTestServer.java
index 47e4ff2..40a67b5 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/http/HttpTestServer.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/http/HttpTestServer.java
@@ -61,7 +61,7 @@ import org.apache.http.protocol.ResponseServer;
  */
 public class HttpTestServer {
     
-    public static final int PORT = AvailablePortFinder.getNextAvailable(18080);
+    public static final int PORT = AvailablePortFinder.getNextAvailable();
     
     /**
      * The local address to bind to.
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyBridgeHostHeaderIssueTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyBridgeHostHeaderIssueTest.java
index 400be93..946a508 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyBridgeHostHeaderIssueTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyBridgeHostHeaderIssueTest.java
@@ -98,11 +98,11 @@ public class JettyBridgeHostHeaderIssueTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(12000);
-        port2 = AvailablePortFinder.getNextAvailable(12100);
-        port3 = AvailablePortFinder.getNextAvailable(12200);
-        port4 = AvailablePortFinder.getNextAvailable(12300);
-        port5 = AvailablePortFinder.getNextAvailable(12400);
+        port = AvailablePortFinder.getNextAvailable();
+        port2 = AvailablePortFinder.getNextAvailable();
+        port3 = AvailablePortFinder.getNextAvailable();
+        port4 = AvailablePortFinder.getNextAvailable();
+        port5 = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyConstantSetHeaderTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyConstantSetHeaderTest.java
index 716d3c7..ada06d8 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyConstantSetHeaderTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyConstantSetHeaderTest.java
@@ -42,7 +42,7 @@ public class JettyConstantSetHeaderTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFailoverRoundRobinTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFailoverRoundRobinTest.java
index 28613a1..2181619 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFailoverRoundRobinTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFailoverRoundRobinTest.java
@@ -24,10 +24,10 @@ import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 
 public class JettyFailoverRoundRobinTest extends CamelTestSupport {
-    private static int port1 = AvailablePortFinder.getNextAvailable(23021);
-    private static int port2 = AvailablePortFinder.getNextAvailable(23022);
-    private static int port3 = AvailablePortFinder.getNextAvailable(23023);
-    private static int port4 = AvailablePortFinder.getNextAvailable(23024);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
+    private static int port3 = AvailablePortFinder.getNextAvailable();
+    private static int port4 = AvailablePortFinder.getNextAvailable();
 
     private String bad = "jetty:http://localhost:" + port1 + "/bad";
     private String bad2 = "jetty:http://localhost:" + port2 + "/bad2";
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFreemarkerTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFreemarkerTest.java
index 76dd172..b6aa75f 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFreemarkerTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyFreemarkerTest.java
@@ -73,7 +73,7 @@ public class JettyFreemarkerTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyGroovySetHeaderTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyGroovySetHeaderTest.java
index 1d60554..d3aef03 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyGroovySetHeaderTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyGroovySetHeaderTest.java
@@ -44,7 +44,7 @@ public class JettyGroovySetHeaderTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownInProgressTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownInProgressTest.java
index 3dbb935..884ba33 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownInProgressTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownInProgressTest.java
@@ -32,7 +32,7 @@ import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
 
 @ContextConfiguration
 public class JettyJmsShutdownInProgressTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20034);
+    private static int port = AvailablePortFinder.getNextAvailable();
     private static final String URL = "http://localhost:" + port + "/test";
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownTest.java
index ce7ee92..4a88c8a 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsShutdownTest.java
@@ -30,7 +30,7 @@ import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
 
 @ContextConfiguration
 public class JettyJmsShutdownTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20035);
+    private static int port = AvailablePortFinder.getNextAvailable();
     private static final String URL = "http://localhost:" + port + "/test";
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTest.java
index e2bea72..30bc81f 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTest.java
@@ -34,7 +34,7 @@ import static org.junit.Assert.assertNotNull;
 
 @ContextConfiguration
 public class JettyJmsTest extends AbstractJUnit4SpringContextTests {
-    private static int port = AvailablePortFinder.getNextAvailable(20038);
+    private static int port = AvailablePortFinder.getNextAvailable();
     private static final String URL = "http://localhost:" + port + "/test";
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTwowayTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTwowayTest.java
index 2985751..68fed6b 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTwowayTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyJmsTwowayTest.java
@@ -32,7 +32,7 @@ import static org.junit.Assert.assertNotNull;
 @ContextConfiguration
 public class JettyJmsTwowayTest extends AbstractJUnit4SpringContextTests {
     
-    private static int port = AvailablePortFinder.getNextAvailable(20123);
+    private static int port = AvailablePortFinder.getNextAvailable();
     private static final String URL = "http://localhost:" + port + "/test";
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyMulticastJmsFileTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyMulticastJmsFileTest.java
index 53446fe..c9bb1c0 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyMulticastJmsFileTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyMulticastJmsFileTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertEquals;
 @ContextConfiguration
 public class JettyMulticastJmsFileTest extends AbstractJUnit4SpringContextTests {
     
-    private static int port = AvailablePortFinder.getNextAvailable(20040);
+    private static int port = AvailablePortFinder.getNextAvailable();
     private static final String URL = "http://localhost:" + port + "/test";
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyRestRedirectTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyRestRedirectTest.java
index 6036fef..7e426ab 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyRestRedirectTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyRestRedirectTest.java
@@ -36,7 +36,7 @@ public class JettyRestRedirectTest extends CamelTestSupport {
     
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimpleSetHeaderTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimpleSetHeaderTest.java
index 88cde4f..ced8184 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimpleSetHeaderTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimpleSetHeaderTest.java
@@ -42,7 +42,7 @@ public class JettySimpleSetHeaderTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimulateFailoverRoundRobinTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimulateFailoverRoundRobinTest.java
index f760bfe..10b9aab 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimulateFailoverRoundRobinTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySimulateFailoverRoundRobinTest.java
@@ -30,10 +30,10 @@ import org.junit.Test;
 
 public class JettySimulateFailoverRoundRobinTest extends CamelTestSupport {
 
-    private static int port1 = AvailablePortFinder.getNextAvailable(23041);
-    private static int port2 = AvailablePortFinder.getNextAvailable(23042);
-    private static int port3 = AvailablePortFinder.getNextAvailable(23043);
-    private static int port4 = AvailablePortFinder.getNextAvailable(23044);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
+    private static int port3 = AvailablePortFinder.getNextAvailable();
+    private static int port4 = AvailablePortFinder.getNextAvailable();
 
     private String bad = "jetty:http://localhost:" + port1 + "/bad";
     private String bad2 = "jetty:http://localhost:" + port2 + "/bad2";
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySpringFailoverRoundRobinTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySpringFailoverRoundRobinTest.java
index 1971587..3b5c49b 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySpringFailoverRoundRobinTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettySpringFailoverRoundRobinTest.java
@@ -24,10 +24,10 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 public class JettySpringFailoverRoundRobinTest extends CamelSpringTestSupport {
 
-    private static int port1 = AvailablePortFinder.getNextAvailable(23051);
-    private static int port2 = AvailablePortFinder.getNextAvailable(23052);
-    private static int port3 = AvailablePortFinder.getNextAvailable(23053);
-    private static int port4 = AvailablePortFinder.getNextAvailable(23054);
+    private static int port1 = AvailablePortFinder.getNextAvailable();
+    private static int port2 = AvailablePortFinder.getNextAvailable();
+    private static int port3 = AvailablePortFinder.getNextAvailable();
+    private static int port4 = AvailablePortFinder.getNextAvailable();
     
     static {
         //set them as system properties so Spring can use the property placeholder
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamTest.java
index 29f9b6e..ac016b1 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamTest.java
@@ -38,7 +38,7 @@ public class JettyValidatorStreamTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamWithStreamCachingEnabledTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamWithStreamCachingEnabledTest.java
index a049d68..9ee9857 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamWithStreamCachingEnabledTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorStreamWithStreamCachingEnabledTest.java
@@ -38,7 +38,7 @@ public class JettyValidatorStreamWithStreamCachingEnabledTest extends CamelTestS
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorTest.java
index 9eeb3d8..58a25e6 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyValidatorTest.java
@@ -49,7 +49,7 @@ public class JettyValidatorTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyVelocityTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyVelocityTest.java
index cb5f530..09bc5e3 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyVelocityTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyVelocityTest.java
@@ -72,7 +72,7 @@ public class JettyVelocityTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltHttpTemplateTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltHttpTemplateTest.java
index 1fa95e2..85fb7a9 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltHttpTemplateTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltHttpTemplateTest.java
@@ -46,7 +46,7 @@ public class JettyXsltHttpTemplateTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltTest.java
index 98e84a6..cfbc39f 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jetty/JettyXsltTest.java
@@ -58,7 +58,7 @@ public class JettyXsltTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JMSTransactionIsTransactedRedeliveredTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JMSTransactionIsTransactedRedeliveredTest.java
index bf29105..e10b58d 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JMSTransactionIsTransactedRedeliveredTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JMSTransactionIsTransactedRedeliveredTest.java
@@ -33,7 +33,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext;
  */
 public class JMSTransactionIsTransactedRedeliveredTest extends CamelSpringTestSupport {
 
-    private static int port = AvailablePortFinder.getNextAvailable(20039);
+    private static int port = AvailablePortFinder.getNextAvailable();
     static {
         //set them as system properties so Spring can use the property placeholder
         //things to set them into the URL's in the spring contexts
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpJmsTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpJmsTest.java
index 05eb9b8..cbdb139 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpJmsTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpJmsTest.java
@@ -73,7 +73,7 @@ public class JmsHttpJmsTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueTest.java
index 5182562..a948e41 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueTest.java
@@ -58,7 +58,7 @@ public class JmsHttpPostIssueTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueWithMockTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueWithMockTest.java
index e44e2d3..a429e58 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueWithMockTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsHttpPostIssueWithMockTest.java
@@ -61,7 +61,7 @@ public class JmsHttpPostIssueWithMockTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             public void configure() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsJettyAsyncTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsJettyAsyncTest.java
index bcb01b7..2b43e14 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsJettyAsyncTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/jms/JmsJettyAsyncTest.java
@@ -51,7 +51,7 @@ public class JmsJettyAsyncTest extends CamelTestSupport {
 
     @Override
     protected RouteBuilder createRouteBuilder() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         return new RouteBuilder() {
             @Override
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/netty/NettyAsyncRequestReplyTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/netty/NettyAsyncRequestReplyTest.java
index 6de769e..399b3a6 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/netty/NettyAsyncRequestReplyTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/netty/NettyAsyncRequestReplyTest.java
@@ -94,7 +94,7 @@ public class NettyAsyncRequestReplyTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                port = AvailablePortFinder.getNextAvailable(8000);
+                port = AvailablePortFinder.getNextAvailable();
 
                 from("netty:tcp://localhost:" + port + "?textline=true&sync=true&reuseAddress=true&synchronous=false")
                     .to("activemq:queue:foo")
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/nettyhttp/NettyHttpClientChunkedResponseTest.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/nettyhttp/NettyHttpClientChunkedResponseTest.java
index 61aea3e..facb4ce 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/nettyhttp/NettyHttpClientChunkedResponseTest.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/nettyhttp/NettyHttpClientChunkedResponseTest.java
@@ -62,8 +62,8 @@ public class NettyHttpClientChunkedResponseTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                port1 = AvailablePortFinder.getNextAvailable(8000);
-                port2 = AvailablePortFinder.getNextAvailable(9000);
+                port1 = AvailablePortFinder.getNextAvailable();
+                port2 = AvailablePortFinder.getNextAvailable();
 
                 // use jetty as server as it supports sending response as chunked encoding
                 from("jetty:http://localhost:" + port1 + "/test")
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpRoute.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpRoute.java
index 122e345..d3d939b 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpRoute.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpRoute.java
@@ -48,7 +48,7 @@ public class JmsToHttpRoute extends SpringRouteBuilder {
 
     @Override
     public void configure() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         // configure a global transacted error handler
         errorHandler(transactionErrorHandler(required));
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionAndNoTransactionErrorHandlerConfiguredRoute.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionAndNoTransactionErrorHandlerConfiguredRoute.java
index b500a09..2730b66 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionAndNoTransactionErrorHandlerConfiguredRoute.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionAndNoTransactionErrorHandlerConfiguredRoute.java
@@ -35,7 +35,7 @@ public class JmsToHttpWithOnExceptionAndNoTransactionErrorHandlerConfiguredRoute
 
     @Override
     public void configure() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         // if its a 404 then regard it as handled
         onException(HttpOperationFailedException.class).onWhen(new Predicate() {
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionRoute.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionRoute.java
index 29d67e4..acaccff 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionRoute.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithOnExceptionRoute.java
@@ -35,7 +35,7 @@ public class JmsToHttpWithOnExceptionRoute extends JmsToHttpRoute {
 
     @Override
     public void configure() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         // configure a global transacted error handler
         errorHandler(transactionErrorHandler(required));
diff --git a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithRollbackRoute.java b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithRollbackRoute.java
index e3fd7fe..a797401 100644
--- a/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithRollbackRoute.java
+++ b/tests/camel-itest/src/test/java/org/apache/camel/itest/tx/JmsToHttpWithRollbackRoute.java
@@ -31,7 +31,7 @@ public class JmsToHttpWithRollbackRoute extends JmsToHttpRoute {
 
     @Override
     public void configure() throws Exception {
-        port = AvailablePortFinder.getNextAvailable(8000);
+        port = AvailablePortFinder.getNextAvailable();
 
         // configure a global transacted error handler
         errorHandler(transactionErrorHandler(required));