diff --git a/Jenkinsfile b/Jenkinsfile
index b03522c90ebedb4ead431257d4d2870cd0fbd448..9364c4109f338181ff3cbda19f14e64a091fac51 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -1,7 +1,7 @@
 pipeline {
     agent {
        node {
-           label 'ozgcloud-jenkins-build-agent'
+           label 'ozgcloud-jenkins-build-agent-jdk21'
         }
     }
 
diff --git a/bescheid-manager/pom.xml b/bescheid-manager/pom.xml
index fd101d6c1f3c1ea6cb09fe5355c1f6e7ab17f0bf..fef1bdb65aea6d5f86b1ba36f3957f807f7dc9fd 100644
--- a/bescheid-manager/pom.xml
+++ b/bescheid-manager/pom.xml
@@ -5,7 +5,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath />
 	</parent>
 
@@ -61,6 +61,11 @@
 			<groupId>net.devh</groupId>
 			<artifactId>grpc-server-spring-boot-starter</artifactId>
 		</dependency>
+
+		<dependency>
+			<groupId>io.grpc</groupId>
+			<artifactId>grpc-inprocess</artifactId>
+		</dependency>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-freemarker</artifactId>
diff --git a/nachrichten-bayernid-proxy/bayernid-proxy-interface/pom.xml b/nachrichten-bayernid-proxy/bayernid-proxy-interface/pom.xml
index d2714d76065f6c2abd925043d5dcbd2117f48593..ad48eb69f7fa296cfc3afbc43c811f53d12d4e21 100644
--- a/nachrichten-bayernid-proxy/bayernid-proxy-interface/pom.xml
+++ b/nachrichten-bayernid-proxy/bayernid-proxy-interface/pom.xml
@@ -30,7 +30,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-dependencies</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 
@@ -44,7 +44,7 @@
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-		<java.version>17</java.version>
+		<java.version>21</java.version>
 		<maven.compiler.source>${java.version}</maven.compiler.source>
 		<maven.compiler.target>${java.version}</maven.compiler.target>
 
diff --git a/nachrichten-bayernid-proxy/pom.xml b/nachrichten-bayernid-proxy/pom.xml
index 63a3f81c8d375b889007eb7cea31cb0257839b77..f4c8561b3a390bc3fb4b4039495dbf734aea7c7a 100644
--- a/nachrichten-bayernid-proxy/pom.xml
+++ b/nachrichten-bayernid-proxy/pom.xml
@@ -31,7 +31,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 
@@ -51,7 +51,7 @@
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-		<java.version>17</java.version>
+		<java.version>21</java.version>
 		<maven.compiler.source>${java.version}</maven.compiler.source>
 		<maven.compiler.target>${java.version}</maven.compiler.target>
 		<jaxb-maven-plugin.version>4.0.0</jaxb-maven-plugin.version>
diff --git a/nachrichten-manager/pom.xml b/nachrichten-manager/pom.xml
index 0fcf2ff525cf2d005aa92e6023761983f3a455bf..c550235a3fc7af376f69ec8ce60391d7bc5d9673 100644
--- a/nachrichten-manager/pom.xml
+++ b/nachrichten-manager/pom.xml
@@ -30,7 +30,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 
@@ -40,7 +40,7 @@
 	<name>OZG-Cloud Nachrichten Manager</name>
 
 	<properties>
-		<java.version>17</java.version>
+		<java.version>21</java.version>
 		<!-- TODO version management -->
 		<shedlock.version>4.25.0</shedlock.version>
 		<logcaptor.version>2.7.10</logcaptor.version>
diff --git a/notification-manager/pom.xml b/notification-manager/pom.xml
index b04650d48b7c7c04f1ac8b842a3f0eecbf82ad97..cf193987b6604ea5333bd9a1a2e8f8d5295a128e 100644
--- a/notification-manager/pom.xml
+++ b/notification-manager/pom.xml
@@ -29,7 +29,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 
diff --git a/vorgang-manager-base/pom.xml b/vorgang-manager-base/pom.xml
index 8fe7c15b688a8278942e129ec274e196ad39099c..c72fb6bd68b4dcd81b5300f9af0d448075a87ae9 100644
--- a/vorgang-manager-base/pom.xml
+++ b/vorgang-manager-base/pom.xml
@@ -6,7 +6,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath />
 	</parent>
 
diff --git a/vorgang-manager-command/pom.xml b/vorgang-manager-command/pom.xml
index 704ae1f3d986fc72420787ca5e4a2806b8e2297e..b9c61f4c1528d86ae94fdc2fb6f878113125848c 100644
--- a/vorgang-manager-command/pom.xml
+++ b/vorgang-manager-command/pom.xml
@@ -4,7 +4,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-dependencies</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 	
diff --git a/vorgang-manager-interface/pom.xml b/vorgang-manager-interface/pom.xml
index e87c9b6a40552d21a5f722e029de32c468dceda9..a1fd94abb4af1fd7c5ee161500a4357bcebaec19 100644
--- a/vorgang-manager-interface/pom.xml
+++ b/vorgang-manager-interface/pom.xml
@@ -30,7 +30,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-dependencies</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>
 
@@ -45,7 +45,7 @@
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 
-		<java.version>17</java.version>
+		<java.version>21</java.version>
 		<maven.compiler.source>${java.version}</maven.compiler.source>
 		<maven.compiler.target>${java.version}</maven.compiler.target>
 
diff --git a/vorgang-manager-server/pom.xml b/vorgang-manager-server/pom.xml
index 21bd4a509e685d4c0ae5bdeb7670127bf1ee3288..6d1c91fce060b2b2e16959bcef870d6fb2908398 100644
--- a/vorgang-manager-server/pom.xml
+++ b/vorgang-manager-server/pom.xml
@@ -32,7 +32,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-parent</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath />
 	</parent>
 
@@ -44,7 +44,7 @@
 	<description>Server Implementierung des VorgangManagers</description>
 
 	<properties>
-		<java.version>17</java.version>
+		<java.version>21</java.version>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 
 		<spring-boot.build-image.imageName>docker.ozg-sh.de/vorgang-manager:build-latest</spring-boot.build-image.imageName>
diff --git a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImpl.java b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImpl.java
index 0e69955250b4c8954b9c13e72d73bab591bffd51..cfd983a2828f8edc7d56c2f0457292615becbaca 100644
--- a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImpl.java
+++ b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImpl.java
@@ -44,10 +44,10 @@ import org.springframework.data.domain.PageRequest;
 import org.springframework.data.elasticsearch.client.elc.NativeQueryBuilder;
 import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
 import org.springframework.data.elasticsearch.core.RefreshPolicy;
-import org.springframework.data.elasticsearch.core.ScriptType;
 import org.springframework.data.elasticsearch.core.SearchHit;
 import org.springframework.data.elasticsearch.core.SearchHits;
 import org.springframework.data.elasticsearch.core.document.Document;
+import org.springframework.data.elasticsearch.core.query.ScriptType;
 import org.springframework.data.elasticsearch.core.query.UpdateQuery;
 import org.springframework.data.support.PageableExecutionUtils;
 import org.springframework.stereotype.Repository;
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImplTest.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImplTest.java
index 5df124809e0e83f21f14c10d9b34ae1279755f75..4932e58791f87155f4d9553608dbe247a4381e0b 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImplTest.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/search/SearchVorgangCustomRepositoryImplTest.java
@@ -47,11 +47,11 @@ import org.springframework.data.domain.Sort;
 import org.springframework.data.elasticsearch.client.elc.NativeQuery;
 import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
 import org.springframework.data.elasticsearch.core.IndexOperations;
-import org.springframework.data.elasticsearch.core.ScriptType;
 import org.springframework.data.elasticsearch.core.SearchHit;
 import org.springframework.data.elasticsearch.core.SearchHits;
 import org.springframework.data.elasticsearch.core.document.Document;
 import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
+import org.springframework.data.elasticsearch.core.query.ScriptType;
 import org.springframework.data.elasticsearch.core.query.UpdateQuery;
 
 import de.ozgcloud.vorgang.callcontext.UserTestFactory;
diff --git a/vorgang-manager-utils/pom.xml b/vorgang-manager-utils/pom.xml
index d9bc8f4c0f90b3bba6b4f695fbcefe2904a73148..c13a8cbe3d486fb0e468f783565fb15c724f63ef 100644
--- a/vorgang-manager-utils/pom.xml
+++ b/vorgang-manager-utils/pom.xml
@@ -30,7 +30,7 @@
 	<parent>
 		<groupId>de.ozgcloud.common</groupId>
 		<artifactId>ozgcloud-common-dependencies</artifactId>
-		<version>3.0.1</version>
+		<version>4.0.1-SNAPSHOT</version>
 		<relativePath/>
 	</parent>