diff --git a/bruno/updateUser.bru b/bruno/updateUser.bru
index 5eca81a..2a7b114 100644
--- a/bruno/updateUser.bru
+++ b/bruno/updateUser.bru
@@ -5,7 +5,7 @@ meta {
}
post {
- url: http://localhost:9090/services/api/user
+ url: http://localhost:9091/services/api/user
body: json
auth: basic
}
diff --git a/conf/springboot.yml b/conf/springboot.yml
index d51ff11..11e1d94 100644
--- a/conf/springboot.yml
+++ b/conf/springboot.yml
@@ -16,4 +16,6 @@ spring:
app:
queue-name: "UserServiceQueue"
-
+ zookeeper:
+ url: "127.0.0.1:2181"
+ group-name: "UserServiceGroup"
diff --git a/conf2/logback.xml b/conf2/logback.xml
new file mode 100644
index 0000000..c3c1afd
--- /dev/null
+++ b/conf2/logback.xml
@@ -0,0 +1,28 @@
+
+
+
+
+ %-5level %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n
+
+
+
+ logs/server.log
+
+ logs/server.%d{yyyy-MM-dd}.log.gz
+ 3
+ 300MB
+
+
+ %-5level %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/conf2/springboot.yml b/conf2/springboot.yml
new file mode 100644
index 0000000..3a0d5f8
--- /dev/null
+++ b/conf2/springboot.yml
@@ -0,0 +1,21 @@
+server:
+ port: 9091
+
+camel:
+ springboot:
+ main-run-controller: true
+
+spring:
+ activemq:
+ broker-url: "tcp://localhost:61616"
+ ldap:
+ urls: ldap://localhost:10389
+ base: dc=example,dc=com
+ username: uid=admin,ou=system
+ password: secret
+
+app:
+ queue-name: "UserServiceQueue"
+ zookeeper:
+ url: "127.0.0.1:2181"
+ group-name: "UserServiceGroup"
diff --git a/pom.xml b/pom.xml
index c9ce93e..ebbc2a3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,12 +4,12 @@
4.0.0
com.example
camel-springboot-activemq6-example
- 2.0.1
+ 2.1.0
camel-springboot-activemq6-example
org.springframework.boot
spring-boot-starter-parent
- 3.3.8
+ 3.3.9
UTF-8
@@ -85,6 +85,10 @@
com.fasterxml.jackson.jakarta.rs
jackson-jakarta-rs-json-provider
+
+ org.apache.camel.springboot
+ camel-zookeeper-master-starter
+
@@ -100,7 +104,7 @@
org.springframework.boot
spring-boot-maven-plugin
- com.example.camel.Boot
+ com.example.sbcamel.Boot
diff --git a/readme.md b/readme.md
index 6fc8f2e..3e834db 100644
--- a/readme.md
+++ b/readme.md
@@ -1,13 +1,19 @@
-**Please start the following services before testing**
+## Setup
-1. ApacheDS Server 2.0.0.AM27
+1. Please start the following services before testing :
-2. Apache ActiveMQ 6.1.5
+```
+ ApacheDS Server 2.0.0.AM27
+ Apache ActiveMQ 6.1.5
+ Apache Zookeeper 3.9.3
+```
+2. Please see conf/springboot.yml for LDAP/ActiveMQ Address
+3. For LDAP group and user setup, see misc/ldapdb.ldif
-**Startup screens**
+## Startup screens
-1. ApacheDS Server 2.0.0.AM27
+**1. ApacheDS Server 2.0.0.AM27**
```
C:\Users\XXX\apacheds-2.0.0.AM28-SNAPSHOT\bin>apacheds.bat default start
@@ -41,7 +47,7 @@ Starting ApacheDS instance 'default'...
```
-2. Apache ActiveMQ 6.1.5
+**2. Apache ActiveMQ 6.1.5**
```
C:\Users\XXX\apache-activemq-6.1.5\bin>activemq start
@@ -89,10 +95,115 @@ Loading message broker from: xbean:activemq.xml
INFO | ActiveMQ Jolokia REST API available at http://127.0.0.1:8161/api/jolokia/
```
-**Setup**
-
-* Please see conf/springboot.yml for LDAP/ActiveMQ Address
-
-* For LDAP group and user setup, see misc/ldapdb.ldif
+**3. Apache Zookeeper 3.9.3**
+```
+C:\Users\XXX\apache-zookeeper-3.9.3-bin>bin\zkServer.cmd
+
+C:\Users\XXX\apache-zookeeper-3.9.3-bin>call "C:\Users\XXX\graalvm-jdk-17.0.14+8.1"\bin\java "-Dzookeeper.log.dir=C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\logs" "-Dzookeeper.log.file=zookeeper-XXX-server-DESKTOP-66E87L5.log" "-XX:+HeapDumpOnOutOfMemoryError" "-XX:OnOutOfMemoryError=cmd /c taskkill /pid %%p /t /f" -cp "C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\build\classes;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\build\lib\*;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\*;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\*;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\conf" org.apache.zookeeper.server.quorum.QuorumPeerMain "C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\conf\zoo.cfg"
+2025-03-01 15:15:37,456 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@177] - Reading configuration from: C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\conf\zoo.cfg
+2025-03-01 15:15:37,458 [myid:] - WARN [main:o.a.z.s.u.VerifyingFileFactory@65] - data is relative. Prepend .\ to indicate that you're sure!
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@440] - clientPortAddress is 0.0.0.0:2181
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@444] - secureClientPort is not set
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@460] - observerMasterPort is not set
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@477] - metricsProvider.className is org.apache.zookeeper.metrics.impl.DefaultMetricsProvider
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.DatadirCleanupManager@78] - autopurge.snapRetainCount set to 3
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.DatadirCleanupManager@79] - autopurge.purgeInterval set to 0
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.DatadirCleanupManager@101] - Purge task is not scheduled.
+2025-03-01 15:15:37,460 [myid:] - WARN [main:o.a.z.s.q.QuorumPeerMain@139] - Either no config or no quorum defined in config, running in standalone mode
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.j.ManagedUtil@46] - Log4j 1.2 jmx support not found; jmx disabled.
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@177] - Reading configuration from: C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\conf\zoo.cfg
+2025-03-01 15:15:37,460 [myid:] - WARN [main:o.a.z.s.u.VerifyingFileFactory@65] - data is relative. Prepend .\ to indicate that you're sure!
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@440] - clientPortAddress is 0.0.0.0:2181
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@444] - secureClientPort is not set
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@460] - observerMasterPort is not set
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.q.QuorumPeerConfig@477] - metricsProvider.className is org.apache.zookeeper.metrics.impl.DefaultMetricsProvider
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.ZooKeeperServerMain@123] - Starting server
+2025-03-01 15:15:37,460 [myid:] - INFO [main:o.a.z.s.ServerMetrics@64] - ServerMetrics initialized with provider org.apache.zookeeper.metrics.impl.DefaultMetricsProvider@4c762604
+2025-03-01 15:15:37,478 [myid:] - INFO [main:o.a.z.s.a.DigestAuthenticationProvider@51] - ACL digest algorithm is: SHA1
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.s.a.DigestAuthenticationProvider@65] - zookeeper.DigestAuthenticationProvider.enabled = true
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.s.p.FileTxnSnapLog@124] - zookeeper.snapshot.trust.empty : false
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] -
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - ______ _
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - |___ / | |
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - / / ___ ___ | | __ ___ ___ _ __ ___ _ __
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - / / / _ \ / _ \ | |/ / / _ \ / _ \ | '_ \ / _ \ | '__|
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - / /__ | (_) | | (_) | | < | __/ | __/ | |_) | | __/ | |
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - /_____| \___/ \___/ |_|\_\ \___| \___| | .__/ \___| |_|
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - | |
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] - |_|
+2025-03-01 15:15:37,481 [myid:] - INFO [main:o.a.z.ZookeeperBanner@42] -
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:zookeeper.version=3.9.3-c26634f34490bb0ea7a09cc51e05ede3b4e320ee, built on 2024-10-17 23:21 UTC
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:host.name=DESKTOP-66E87L5
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.version=17.0.14
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.vendor=Oracle Corporation
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.home=C:\Users\XXX\graalvm-jdk-17.0.14+8.1
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.class.path=C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\build\classes;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\build\lib\*;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\*;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\audience-annotations-0.12.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\commons-cli-1.5.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\commons-io-2.17.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jackson-annotations-2.15.2.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jackson-core-2.15.2.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jackson-databind-2.15.2.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\javax.servlet-api-3.1.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-http-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-io-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-security-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-server-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-servlet-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-util-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jetty-util-ajax-9.4.56.v20240826.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\jline-2.14.6.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\logback-classic-1.2.13.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\logback-core-1.2.13.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\metrics-core-4.1.12.1.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-buffer-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-codec-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-common-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-handler-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-resolver-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final-linux-aarch_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final-linux-x86_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final-osx-aarch_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final-osx-x86_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final-windows-x86_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-boringssl-static-2.0.66.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-tcnative-classes-2.0.66.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-transport-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-transport-classes-epoll-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-transport-native-epoll-4.1.113.Final-linux-x86_64.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\netty-transport-native-unix-common-4.1.113.Final.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\simpleclient-0.9.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\simpleclient_common-0.9.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\simpleclient_hotspot-0.9.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\simpleclient_servlet-0.9.0.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\slf4j-api-1.7.30.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\snappy-java-1.1.10.5.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\zookeeper-3.9.3.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\zookeeper-jute-3.9.3.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\lib\zookeeper-prometheus-metrics-3.9.3.jar;C:\Users\XXX\apache-zookeeper-3.9.3-bin\bin\..\conf
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.library.path=C:\Users\XXX\graalvm-jdk-17.0.14+8.1\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\PuTTY\;C:\Users\XXX\AppData\Local\Microsoft\WindowsApps;C:\Users\XXX\graalvm-jdk-17.0.14+8.1\bin;;C:\Users\XXX\graalvm-jdk-17.0.14+8.1\bin;.
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.io.tmpdir=C:\Users\XXX\AppData\Local\Temp\
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:java.compiler=
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.name=Windows 11
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.arch=amd64
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.version=10.0
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:user.name=XXX
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:user.home=C:\Users\XXX
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:user.dir=C:\Users\XXX\apache-zookeeper-3.9.3-bin
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.memory.free=495MB
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.memory.max=8136MB
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.Environment@98] - Server environment:os.memory.total=512MB
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@149] - zookeeper.enableEagerACLCheck = false
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@162] - zookeeper.digest.enabled = true
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@166] - zookeeper.closeSessionTxn.enabled = true
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@2242] - zookeeper.serializeLastProcessedZxid.enabled = true
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1585] - zookeeper.flushDelay = 0 ms
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1594] - zookeeper.maxWriteQueuePollTime = 0 ms
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1603] - zookeeper.maxBatchSize=1000
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@287] - zookeeper.intBufferStartingSizeBytes = 1024
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.BlueThrottle@141] - Weighed connection throttling is disabled
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.AuthenticationHelper@66] - zookeeper.enforce.auth.enabled = false
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.AuthenticationHelper@67] - zookeeper.enforce.auth.schemes = []
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1395] - minSessionTimeout set to 4000 ms
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1404] - maxSessionTimeout set to 40000 ms
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ResponseCache@45] - getData response cache size is initialized with value 400.
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ResponseCache@45] - getChildren response cache size is initialized with value 400.
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@109] - zookeeper.pathStats.slotCapacity = 60
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@110] - zookeeper.pathStats.slotDuration = 15
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@111] - zookeeper.pathStats.maxDepth = 6
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@112] - zookeeper.pathStats.initialDelay = 5
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@113] - zookeeper.pathStats.delay = 5
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.u.RequestPathMetricsCollector@114] - zookeeper.pathStats.enabled = false
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1622] - The max bytes for all large requests are set to 104857600
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@1636] - The large request threshold is set to -1
+2025-03-01 15:15:37,492 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@385] - Created server with tickTime 2000 ms minSessionTimeout 4000 ms maxSessionTimeout 40000 ms clientPortListenBacklog -1 dataLogdir data\version-2 snapdir data\version-2
+2025-03-01 15:15:37,513 [myid:] - INFO [main:o.e.j.u.l.Log@170] - Logging initialized @220ms to org.eclipse.jetty.util.log.Slf4jLog
+2025-03-01 15:15:37,545 [myid:] - WARN [main:o.e.j.s.h.ContextHandler@1662] - o.e.j.s.ServletContextHandler@6cf0e0ba{/,null,STOPPED} contextPath ends with /*
+2025-03-01 15:15:37,545 [myid:] - WARN [main:o.e.j.s.h.ContextHandler@1673] - Empty contextPath
+2025-03-01 15:15:37,556 [myid:] - INFO [main:o.e.j.s.Server@375] - jetty-9.4.56.v20240826; built: 2024-08-26T17:15:05.868Z; git: ec6782ff5ead824dabdcf47fa98f90a4aedff401; jvm 17.0.14+8-LTS-jvmci-23.0-b54
+2025-03-01 15:15:37,570 [myid:] - INFO [main:o.e.j.s.s.DefaultSessionIdManager@334] - DefaultSessionIdManager workerName=node0
+2025-03-01 15:15:37,570 [myid:] - INFO [main:o.e.j.s.s.DefaultSessionIdManager@339] - No SessionScavenger set, using defaults
+2025-03-01 15:15:37,570 [myid:] - INFO [main:o.e.j.s.s.HouseKeeper@132] - node0 Scavenging every 660000ms
+2025-03-01 15:15:37,570 [myid:] - WARN [main:o.e.j.s.ConstraintSecurityHandler@759] - ServletContext@o.e.j.s.ServletContextHandler@6cf0e0ba{/,null,STARTING} has uncovered http methods for path: /*
+2025-03-01 15:15:37,583 [myid:] - INFO [main:o.e.j.s.h.ContextHandler@921] - Started o.e.j.s.ServletContextHandler@6cf0e0ba{/,null,AVAILABLE}
+2025-03-01 15:15:37,647 [myid:] - INFO [main:o.e.j.s.AbstractConnector@333] - Started ServerConnector@3c407114{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
+2025-03-01 15:15:37,647 [myid:] - INFO [main:o.e.j.s.Server@415] - Started @352ms
+2025-03-01 15:15:37,647 [myid:] - INFO [main:o.a.z.s.a.JettyAdminServer@201] - Started AdminServer on address 0.0.0.0, port 8080 and command URL /commands
+2025-03-01 15:15:37,649 [myid:] - INFO [main:o.a.z.s.ServerCnxnFactory@172] - Using org.apache.zookeeper.server.NIOServerCnxnFactory as server connection factory
+2025-03-01 15:15:37,649 [myid:] - WARN [main:o.a.z.s.ServerCnxnFactory@337] - maxCnxns is not configured, using default value 0.
+2025-03-01 15:15:37,649 [myid:] - INFO [main:o.a.z.s.NIOServerCnxnFactory@652] - Configuring NIO connection handler with 10s sessionless connection timeout, 3 selector thread(s), 56 worker threads, and 64 kB direct buffers.
+2025-03-01 15:15:37,649 [myid:] - INFO [main:o.a.z.s.NIOServerCnxnFactory@660] - binding to port 0.0.0.0/0.0.0.0:2181
+2025-03-01 15:15:37,659 [myid:] - INFO [main:o.a.z.s.w.WatchManagerFactory@42] - Using org.apache.zookeeper.server.watch.WatchManager as watch manager
+2025-03-01 15:15:37,660 [myid:] - INFO [main:o.a.z.s.w.WatchManagerFactory@42] - Using org.apache.zookeeper.server.watch.WatchManager as watch manager
+2025-03-01 15:15:37,660 [myid:] - INFO [main:o.a.z.s.ZKDatabase@134] - zookeeper.snapshotSizeFactor = 0.33
+2025-03-01 15:15:37,660 [myid:] - INFO [main:o.a.z.s.ZKDatabase@154] - zookeeper.commitLogCount=500
+2025-03-01 15:15:37,664 [myid:] - INFO [main:o.a.z.s.p.SnapStream@61] - zookeeper.snapshot.compression.method = CHECKED
+2025-03-01 15:15:37,664 [myid:] - INFO [main:o.a.z.s.p.FileTxnSnapLog@480] - Snapshotting: 0x0 to data\version-2\snapshot.0
+2025-03-01 15:15:37,665 [myid:] - INFO [main:o.a.z.s.ZKDatabase@291] - Snapshot loaded in 5 ms, highest zxid is 0x0, digest is 1371985504
+2025-03-01 15:15:37,666 [myid:] - INFO [main:o.a.z.s.p.FileTxnSnapLog@480] - Snapshotting: 0x0 to data\version-2\snapshot.0
+2025-03-01 15:15:37,667 [myid:] - INFO [main:o.a.z.s.ZooKeeperServer@589] - Snapshot taken in 0 ms
+2025-03-01 15:15:37,670 [myid:] - INFO [ProcessThread(sid:0 cport:2181)::o.a.z.s.PrepRequestProcessor@138] - PrepRequestProcessor (sid:0) started, reconfigEnabled=false
+2025-03-01 15:15:37,670 [myid:] - INFO [main:o.a.z.s.RequestThrottler@75] - zookeeper.request_throttler.shutdownTimeout = 10000 ms
+2025-03-01 15:15:37,719 [myid:] - INFO [main:o.a.z.s.ContainerManager@83] - Using checkIntervalMs=60000 maxPerMinute=10000 maxNeverUsedIntervalMs=0
+2025-03-01 15:15:37,720 [myid:] - INFO [main:o.a.z.a.ZKAuditProvider@42] - ZooKeeper audit is disabled.
+2025-03-01 15:28:22,213 [myid:] - INFO [SyncThread:0:o.a.z.s.p.FileTxnLog@291] - Creating new log file: log.1
+```
diff --git a/src/main/java/com/example/camel/Boot.java b/src/main/java/com/example/sbcamel/Boot.java
similarity index 93%
rename from src/main/java/com/example/camel/Boot.java
rename to src/main/java/com/example/sbcamel/Boot.java
index 2515f7d..c63d1af 100644
--- a/src/main/java/com/example/camel/Boot.java
+++ b/src/main/java/com/example/sbcamel/Boot.java
@@ -1,4 +1,4 @@
-package com.example.camel;
+package com.example.sbcamel;
import java.io.File;
diff --git a/src/main/java/com/example/camel/CamelRouter.java b/src/main/java/com/example/sbcamel/CamelRouter.java
similarity index 64%
rename from src/main/java/com/example/camel/CamelRouter.java
rename to src/main/java/com/example/sbcamel/CamelRouter.java
index d9da479..0117900 100644
--- a/src/main/java/com/example/camel/CamelRouter.java
+++ b/src/main/java/com/example/sbcamel/CamelRouter.java
@@ -1,8 +1,9 @@
-package com.example.camel;
+package com.example.sbcamel;
import org.apache.camel.Exchange;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.bean.validator.BeanValidationException;
+import org.apache.camel.component.zookeepermaster.policy.MasterRoutePolicy;
import org.apache.camel.model.dataformat.JsonLibrary;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@@ -15,6 +16,12 @@ public class CamelRouter extends RouteBuilder {
@Value("${app.queue-name}")
private String queueName;
+ @Value("${app.zookeeper.url}")
+ private String zookeeperUrl;
+
+ @Value("${app.zookeeper.group-name}")
+ private String groupName;
+
@Override
public void configure() throws Exception {
// very raw way, just to handle the validation responses
@@ -27,8 +34,12 @@ public class CamelRouter extends RouteBuilder {
.setHeader(Exchange.BEAN_METHOD_NAME, simple("${header.operationName}"))
.to("activemq6:queue:" + queueName);
- from("activemq6:queue:" + queueName).to("bean-validator:user").bean(UserServiceImpl.class).marshal()
- .json(JsonLibrary.Jackson);
+ MasterRoutePolicy masterRoutePolicy = new MasterRoutePolicy();
+ masterRoutePolicy.setZooKeeperUrl(zookeeperUrl);
+ masterRoutePolicy.setGroupName(groupName);
+
+ from("activemq6:queue:" + queueName).autoStartup("false").routePolicy(masterRoutePolicy)
+ .to("bean-validator:user").bean(UserServiceImpl.class).marshal().json(JsonLibrary.Jackson);
}
}
\ No newline at end of file
diff --git a/src/main/java/com/example/camel/SecurityConfig.java b/src/main/java/com/example/sbcamel/SecurityConfig.java
similarity index 96%
rename from src/main/java/com/example/camel/SecurityConfig.java
rename to src/main/java/com/example/sbcamel/SecurityConfig.java
index 00ba67d..0e1a11e 100644
--- a/src/main/java/com/example/camel/SecurityConfig.java
+++ b/src/main/java/com/example/sbcamel/SecurityConfig.java
@@ -1,4 +1,4 @@
-package com.example.camel;
+package com.example.sbcamel;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
diff --git a/src/main/java/com/example/camel/User.java b/src/main/java/com/example/sbcamel/User.java
similarity index 92%
rename from src/main/java/com/example/camel/User.java
rename to src/main/java/com/example/sbcamel/User.java
index 0fe2adb..c94a970 100644
--- a/src/main/java/com/example/camel/User.java
+++ b/src/main/java/com/example/sbcamel/User.java
@@ -1,4 +1,4 @@
-package com.example.camel;
+package com.example.sbcamel;
import java.io.Serializable;
import java.util.StringJoiner;
diff --git a/src/main/java/com/example/camel/UserService.java b/src/main/java/com/example/sbcamel/UserService.java
similarity index 92%
rename from src/main/java/com/example/camel/UserService.java
rename to src/main/java/com/example/sbcamel/UserService.java
index a65460d..ee01434 100644
--- a/src/main/java/com/example/camel/UserService.java
+++ b/src/main/java/com/example/sbcamel/UserService.java
@@ -1,4 +1,4 @@
-package com.example.camel;
+package com.example.sbcamel;
import java.util.Collection;
diff --git a/src/main/java/com/example/camel/UserServiceImpl.java b/src/main/java/com/example/sbcamel/UserServiceImpl.java
similarity index 91%
rename from src/main/java/com/example/camel/UserServiceImpl.java
rename to src/main/java/com/example/sbcamel/UserServiceImpl.java
index b80a002..eaf2c62 100644
--- a/src/main/java/com/example/camel/UserServiceImpl.java
+++ b/src/main/java/com/example/sbcamel/UserServiceImpl.java
@@ -1,4 +1,4 @@
-package com.example.camel;
+package com.example.sbcamel;
import java.util.Collection;
import java.util.Map;