diff --git a/bescheid-manager/pom.xml b/bescheid-manager/pom.xml
index 35e976b6cc75e8bb950488cb7da9c96f43703e21..0e9301c2e860466f53a264ef2e37311bdfc2dc54 100644
--- a/bescheid-manager/pom.xml
+++ b/bescheid-manager/pom.xml
@@ -13,12 +13,13 @@
 	<artifactId>bescheid-manager</artifactId>
 	<name>OZG-Cloud Bescheid Manager</name>
 	<version>1.22.0-SNAPSHOT</version>
+	<inceptionYear>2020</inceptionYear>
 
 	<properties>
 		<vorgang-manager.version>2.19.0-SNAPSHOT</vorgang-manager.version>
 		<nachrichten-manager.version>2.14.0</nachrichten-manager.version>
 		<document-manager.version>1.1.0</document-manager.version>
-		<api-lib.version>0.13.0</api-lib.version>
+		<api-lib.version>0.14.0</api-lib.version>
 		<spring-cloud-config-client.version>4.1.3</spring-cloud-config-client.version>
 	</properties>
 
@@ -59,6 +60,7 @@
 			<groupId>de.ozgcloud.api-lib</groupId>
 			<artifactId>api-lib-core</artifactId>
 			<version>${api-lib.version}</version>
+			<scope>runtime</scope>
 		</dependency>
 
 
diff --git a/pom.xml b/pom.xml
index 494b935a4f31039cfce14ab9cbacf431bcb5b818..f12cb0fdd15cbc5aa8c82df6c5314dbd7b7362ac 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,10 +33,7 @@
 
 	<name>OZG-Cloud Vorgang Manager</name>
 	<packaging>pom</packaging>
-
-	<properties>
-		<ozgcloud.license.version>1.6.0</ozgcloud.license.version>
-	</properties>
+	<inceptionYear>2020</inceptionYear>
 
 	<modules>
 		<module>vorgang-manager-interface</module>
@@ -53,29 +50,6 @@
 				<plugin>
 					<groupId>com.mycila</groupId>
 					<artifactId>license-maven-plugin</artifactId>
-					<version>4.1</version>
-					<configuration>
-						<mapping>
-							<config>SCRIPT_STYLE</config>
-						</mapping>
-						<licenseSets>
-							<licenseSet>
-								<header>license/eupl_v1_2_de/header.txt</header>
-								<excludes>
-									<exclude>**/README</exclude>
-									<exclude>src/test/resources/**</exclude>
-									<exclude>src/main/resources/**</exclude>
-								</excludes>
-							</licenseSet>
-						</licenseSets>
-					</configuration>
-					<dependencies>
-						<dependency>
-							<groupId>de.ozgcloud.common</groupId>
-							<artifactId>ozgcloud-common-license</artifactId>
-							<version>${ozgcloud.license.version}</version>
-						</dependency>
-					</dependencies>
 				</plugin>
 			</plugins>
 		</pluginManagement>
diff --git a/vorgang-manager-base/pom.xml b/vorgang-manager-base/pom.xml
index 3c18be7812b331359d872643097d230dd660df49..40e307bf209dc862e577273cbab54a1841076f63 100644
--- a/vorgang-manager-base/pom.xml
+++ b/vorgang-manager-base/pom.xml
@@ -15,6 +15,7 @@
 	<version>2.19.0-SNAPSHOT</version>
 
 	<name>OZG-Cloud Vorgang Manager Base</name>
+	<inceptionYear>2020</inceptionYear>
 
 	<dependencies>
 		<dependency>
diff --git a/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/CallContextHandleInterceptorTest.java b/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/CallContextHandleInterceptorTest.java
index 26912e9a3d7ad539301b711214037dcfdab92594..637608f8fdd521713691226b01175711485b817f 100644
--- a/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/CallContextHandleInterceptorTest.java
+++ b/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/CallContextHandleInterceptorTest.java
@@ -23,8 +23,6 @@
  */
 package de.ozgcloud.vorgang.callcontext;
 
-import static de.ozgcloud.common.grpc.GrpcUtil.*;
-import static de.ozgcloud.common.grpc.GrpcUtil.KEY_REQUEST_ID;
 import static de.ozgcloud.vorgang.callcontext.CallContextHandleInterceptor.*;
 import static org.assertj.core.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
@@ -38,6 +36,7 @@ import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.springframework.security.core.context.SecurityContextHolder;
 
+import de.ozgcloud.common.grpc.GrpcUtil;
 import de.ozgcloud.vorgang.callcontext.CallContextHandleInterceptor.LogContextSettingListener;
 import io.grpc.Metadata;
 import io.grpc.ServerCall;
@@ -71,7 +70,7 @@ class CallContextHandleInterceptorTest {
 
 			@Test
 			void shouldReturnNewRequestIdIfNoGiven() {
-				headers.removeAll(createKeyOf(KEY_REQUEST_ID));
+				headers.removeAll(GrpcUtil.createKeyOf(GrpcUtil.KEY_REQUEST_ID));
 
 				var reqId = listener.getRequestId();
 
@@ -93,7 +92,7 @@ class CallContextHandleInterceptorTest {
 			@Test
 			void shouldFillOrgaIdCollection() {
 				Metadata metadata = CallContextTestFactory.createMetadata();
-				metadata.put(createKeyOf(KEY_ACCESS_LIMITED_ORGAID), "orgaid_2".getBytes());
+				metadata.put(GrpcUtil.createKeyOf(KEY_ACCESS_LIMITED_ORGAID), "orgaid_2".getBytes());
 
 				var user = buildListener(metadata).createUser();
 
@@ -103,7 +102,7 @@ class CallContextHandleInterceptorTest {
 			@Test
 			void shouldFillEmptyListIfNoOrgaIds() {
 				Metadata metadata = CallContextTestFactory.createMetadata();
-				metadata.removeAll(createKeyOf(KEY_ACCESS_LIMITED_ORGAID));
+				metadata.removeAll(GrpcUtil.createKeyOf(KEY_ACCESS_LIMITED_ORGAID));
 
 				var user = buildListener(metadata).createUser();
 
@@ -126,7 +125,7 @@ class CallContextHandleInterceptorTest {
 				@Test
 				void shouldMapFalseIfKeyIsNotPresent() {
 					var metadata = CallContextTestFactory.createMetadata();
-					metadata.removeAll(createKeyOf(KEY_ACCESS_LIMITED));
+					metadata.removeAll(GrpcUtil.createKeyOf(KEY_ACCESS_LIMITED));
 
 					var user = buildListener(metadata).createUser();
 
diff --git a/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java b/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
index 1598d49820d50e0da5a80b634ad8709252871bdb..28d15003242cad91c1602b40c4b64cc0eefb6e95 100644
--- a/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
+++ b/vorgang-manager-base/src/test/java/de/ozgcloud/vorgang/callcontext/VorgangManagerClientCallContextAttachingInterceptorTest.java
@@ -24,7 +24,6 @@
 package de.ozgcloud.vorgang.callcontext;
 
 import static de.ozgcloud.common.grpc.GrpcUtil.*;
-import static de.ozgcloud.common.grpc.GrpcUtil.KEY_REQUEST_ID;
 import static de.ozgcloud.vorgang.callcontext.VorgangManagerClientCallContextAttachingInterceptor.*;
 import static org.assertj.core.api.Assertions.*;
 import static org.mockito.ArgumentMatchers.*;
@@ -38,6 +37,7 @@ import org.mockito.Captor;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 
+import de.ozgcloud.common.grpc.GrpcUtil;
 import io.grpc.CallOptions;
 import io.grpc.Channel;
 import io.grpc.ClientCall;
@@ -77,14 +77,14 @@ class VorgangManagerClientCallContextAttachingInterceptorTest {
 		void shouldAddClientName() {
 			var addedMetadata = interceptCall();
 
-			assertThat(addedMetadata.get(createKeyOf(KEY_CLIENT_NAME))).isEqualTo(VORGANG_MANAGER_CLIENT_NAME.getBytes());
+			assertThat(addedMetadata.get(GrpcUtil.createKeyOf(KEY_CLIENT_NAME))).isEqualTo(VORGANG_MANAGER_CLIENT_NAME.getBytes());
 		}
 
 		@Test
 		void shouldAddRequestId() {
 			var addedMetadata = interceptCall();
 
-			assertThat(addedMetadata.get(createKeyOf(KEY_REQUEST_ID))).isNotNull();
+			assertThat(addedMetadata.get(GrpcUtil.createKeyOf(GrpcUtil.KEY_REQUEST_ID))).isNotNull();
 		}
 
 		private Metadata interceptCall() {
diff --git a/vorgang-manager-command/pom.xml b/vorgang-manager-command/pom.xml
index 86154b3e5a230ebb4c9fcd7320c76edf227257e8..541b45729be285eb5c93538d12f2caf7c6a9b6a6 100644
--- a/vorgang-manager-command/pom.xml
+++ b/vorgang-manager-command/pom.xml
@@ -12,6 +12,7 @@
 	<artifactId>command-manager</artifactId>
 	<version>2.19.0-SNAPSHOT</version>
 	<name>OZG-Cloud Command Manager</name>
+	<inceptionYear>2020</inceptionYear>
 
 	<properties>
 		<maven-jar-plugin.version>3.3.0</maven-jar-plugin.version>
diff --git a/vorgang-manager-interface/pom.xml b/vorgang-manager-interface/pom.xml
index 31e4a2d78e6c5e7b298e7d313698d4e9b7dd82af..ab877b0fd4e8eb9acddb68589d88b47d80fd7028 100644
--- a/vorgang-manager-interface/pom.xml
+++ b/vorgang-manager-interface/pom.xml
@@ -40,6 +40,7 @@
 
 	<name>OZG-Cloud Vorgang Manager gRPC Interface</name>
 	<description>Interface (gRPC) for Vorgang Manager Server</description>
+	<inceptionYear>2020</inceptionYear>
 
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -50,7 +51,6 @@
 		<maven.compiler.target>${java.version}</maven.compiler.target>
 
 		<find-and-replace-maven-plugin.version>1.1.0</find-and-replace-maven-plugin.version>
-		<ozgcloud.license.version>1.6.0</ozgcloud.license.version>
 	</properties>
 
 	<dependencyManagement>
@@ -139,34 +139,6 @@
 					</execution>
 				</executions>
 			</plugin>
-			<!-- TODO move to common -->
-			<plugin>
-				<groupId>com.mycila</groupId>
-				<artifactId>license-maven-plugin</artifactId>
-				<configuration>
-					<mapping>
-						<proto>SLASHSTAR_STYLE</proto>
-						<config>SCRIPT_STYLE</config>
-					</mapping>
-					<licenseSets>
-						<licenseSet>
-							<header>license/eupl_v1_2_de/header.txt</header>
-							<excludes>
-								<exclude>**/*.yaml</exclude>
-								<exclude>**/*.yml</exclude>
-								<exclude>README.md</exclude>
-							</excludes>
-						</licenseSet>
-					</licenseSets>
-				</configuration>
-				<dependencies>
-					<dependency>
-						<groupId>de.ozgcloud.common</groupId>
-						<artifactId>ozgcloud-common-license</artifactId>
-						<version>${ozgcloud.license.version}</version>
-					</dependency>
-				</dependencies>
-			</plugin>
 
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
diff --git a/vorgang-manager-server/pom.xml b/vorgang-manager-server/pom.xml
index 9834cd34b2dd70acd482b12b58a7e1c9ffdbc34c..18ea75305659ccdb89d9d39c6951fd89eb355ed1 100644
--- a/vorgang-manager-server/pom.xml
+++ b/vorgang-manager-server/pom.xml
@@ -42,6 +42,7 @@
 
 	<name>OZG-Cloud Vorgang Manager Server</name>
 	<description>Server Implementierung des VorgangManagers</description>
+	<inceptionYear>2020</inceptionYear>
 
 	<properties>
 		<java.version>21</java.version>
@@ -49,15 +50,14 @@
 
 		<spring-boot.build-image.imageName>docker.ozg-sh.de/vorgang-manager:build-latest</spring-boot.build-image.imageName>
 
-		<ozgcloud.license.version>1.3.0</ozgcloud.license.version>
-		<zufi-manager-interface.version>1.4.0</zufi-manager-interface.version>
+		<zufi-manager-interface.version>1.6.0-SNAPSHOT</zufi-manager-interface.version>
 
-		<user-manager-interface.version>2.9.0</user-manager-interface.version>
+		<user-manager-interface.version>2.12.0-SNAPSHOT</user-manager-interface.version>
 		<bescheid-manager.version>1.22.0-SNAPSHOT</bescheid-manager.version>
 		<processor-manager.version>0.5.0</processor-manager.version>
 		<nachrichten-manager.version>2.14.1</nachrichten-manager.version>
 		<api-lib.version>0.15.0-SNAPSHOT</api-lib.version>
-		<notification-manager.version>2.12.0</notification-manager.version>
+		<notification-manager.version>2.13.0-SNAPSHOT</notification-manager.version>
 		<collaboration-manager.version>0.6.0-SNAPSHOT</collaboration-manager.version>
 		<archive-manager.version>0.1.0-PR-15-SNAPSHOT</archive-manager.version>
 		<document-manager.version>1.1.0</document-manager.version>
@@ -298,6 +298,17 @@
 			<scope>test</scope>
 		</dependency>
 
+		<dependency>
+			<groupId>de.ozgcloud.api-lib</groupId>
+			<artifactId>ozg-cloud-spring-boot-starter</artifactId>
+			<version>${api-lib.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>de.ozgcloud.api-lib</groupId>
+			<artifactId>api-lib-core</artifactId>
+			<version>${api-lib.version}</version>
+		</dependency>
+
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter-test</artifactId>
@@ -429,35 +440,6 @@
 				<groupId>pl.project13.maven</groupId>
 				<artifactId>git-commit-id-plugin</artifactId>
 			</plugin>
-
-			<plugin>
-				<groupId>com.mycila</groupId>
-				<artifactId>license-maven-plugin</artifactId>
-				<configuration>
-					<mapping>
-						<config>SCRIPT_STYLE</config>
-						<ftlh>FTL</ftlh>
-					</mapping>
-					<licenseSets>
-						<licenseSet>
-							<header>license/eupl_v1_2_de/header.txt</header>
-							<excludes>
-								<exclude>**/README</exclude>
-								<exclude>src/test/resources/**</exclude>
-								<exclude>src/main/resources/*.yml</exclude>
-								<exclude>src/main/resources/*.txt</exclude>
-							</excludes>
-						</licenseSet>
-					</licenseSets>
-				</configuration>
-				<dependencies>
-					<dependency>
-						<groupId>de.ozgcloud.common</groupId>
-						<artifactId>ozgcloud-common-license</artifactId>
-						<version>${ozgcloud.license.version}</version>
-					</dependency>
-				</dependencies>
-			</plugin>
 		</plugins>
 	</build>
 
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/archive/ArchiveManagerITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/archive/ArchiveManagerITCase.java
new file mode 100644
index 0000000000000000000000000000000000000000..6707c3a27418d4f522ff5ada52b65147a1457f95
--- /dev/null
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/archive/ArchiveManagerITCase.java
@@ -0,0 +1,190 @@
+/*
+ * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+package de.ozgcloud.archive;
+
+import static org.assertj.core.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.fail;
+import static org.mockito.Mockito.*;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.boot.test.mock.mockito.SpyBean;
+import org.springframework.data.mongodb.core.MongoOperations;
+import org.springframework.test.annotation.DirtiesContext;
+
+import com.google.protobuf.ByteString;
+
+import de.ozgcloud.archive.attributes.ClientAttributeService;
+import de.ozgcloud.archive.common.callcontext.CallContextUser;
+import de.ozgcloud.archive.grpc.export.ExportServiceGrpc.ExportServiceBlockingStub;
+import de.ozgcloud.archive.grpc.export.GrpcExportVorgangRequest;
+import de.ozgcloud.command.CommandStatus;
+import de.ozgcloud.common.test.DataITCase;
+import de.ozgcloud.vorgang.VorgangManagerServerApplication;
+import de.ozgcloud.vorgang.callcontext.TestCallContextAttachingInterceptor;
+import de.ozgcloud.vorgang.callcontext.WithMockCustomUser;
+import de.ozgcloud.vorgang.clientattribute.ClientAttribute;
+import de.ozgcloud.vorgang.command.CommandService;
+import de.ozgcloud.vorgang.command.CreateCommandRequest;
+import de.ozgcloud.vorgang.vorgang.EingangTestFactory;
+import de.ozgcloud.vorgang.vorgang.Vorgang;
+import de.ozgcloud.vorgang.vorgang.VorgangService;
+import de.ozgcloud.vorgang.vorgang.VorgangTestFactory;
+import net.devh.boot.grpc.client.inject.GrpcClient;
+
+@SpringBootTest(classes = VorgangManagerServerApplication.class, properties = {
+		"grpc.server.inProcessName=test",
+		"grpc.client.vorgang-manager.address=in-process:test",
+		"grpc.client.file-manager.address=in-process:test",
+		"grpc.client.ozgcloud-command-manager.address=in-process:test",
+		"grpc.client.inProcess.address=in-process:test",
+})
+@DataITCase
+@DirtiesContext
+@WithMockCustomUser
+public class ArchiveManagerITCase {
+
+	@Autowired
+	private CommandService commandService;
+	@Autowired
+	private MongoOperations mongoOperations;
+	@Autowired
+	private VorgangService vorgangService;
+	@SpyBean
+	private TestArchiveEventListener archiveEventListener;
+
+	private Vorgang vorgang;
+
+	@BeforeEach
+	void init() {
+		mongoOperations.dropCollection(Vorgang.COLLECTION_NAME);
+	}
+
+	@Nested
+	class TestArchiveVorgang {
+
+		@BeforeEach
+		void init() {
+			vorgang = mongoOperations.save(VorgangTestFactory.createBuilder().id(null).version(0).build());
+		}
+
+		@Test
+		void shouldSetArchiveClientAttribute() {
+			commandService.createCommand(buildArchiveVorgangCommand());
+
+			verify(archiveEventListener, timeout(60_000)).onVorgangLockedEvent(any());
+
+			var updatedVorgang = mongoOperations.findById(vorgang.getId(), Vorgang.class);
+			assertThat(getArchivingClientAttribute(updatedVorgang).getBoolValue()).contains(true);
+		}
+
+		@Test
+		void shouldLockVorgang() {
+			commandService.createCommand(buildArchiveVorgangCommand());
+
+			verify(archiveEventListener, timeout(60_000)).onVorgangLockedEvent(any());
+
+			assertThat(vorgangService.isVorgangLocked(vorgang.getId())).isTrue();
+		}
+
+		@Test
+		void shouldNotFinishParentCommand() {
+			var archiveVorgangCommand = commandService.createCommand(buildArchiveVorgangCommand());
+
+			verify(archiveEventListener, timeout(60_000)).onVorgangLockedEvent(any());
+
+			var parentCommand = commandService.getById(archiveVorgangCommand.getId());
+			assertThat(parentCommand.getStatus()).isEqualTo(CommandStatus.PENDING);
+		}
+
+		private CreateCommandRequest buildArchiveVorgangCommand() {
+			return CreateCommandRequest.builder()
+					.order("ARCHIVE_VORGANG")
+					.vorgangId(vorgang.getId())
+					.relationId(vorgang.getId())
+					.relationVersion(vorgang.getVersion())
+					.build();
+		}
+
+		private ClientAttribute getArchivingClientAttribute(Vorgang vorgang) {
+			var archiveAttributes = vorgang.getClientAttributes().get(CallContextUser.ARCHIVE_MANAGER_CLIENT_NAME);
+			assertThat(archiveAttributes).isNotNull();
+			return archiveAttributes.get(ClientAttributeService.ATTRIBUTE_NAME_ANTRAG_ARCHIVING);
+		}
+	}
+
+	@Nested
+	class TestExportVorgang {
+
+		@GrpcClient("inProcess")
+		private ExportServiceBlockingStub exportClient;
+
+		@BeforeEach
+		void init() {
+			vorgang = mongoOperations.save(buildVorgang());
+		}
+
+		@Test
+		void shouldExportVorgang() {
+			var result = exportVorgang();
+
+			assertThat(result.fileName()).endsWith("_Abgabe.Abgabe.0401.xdomea");
+			assertThat(result.content()).isNotEmpty();
+		}
+
+		private ExportServiceBlockingStub getExportClient() {
+			return exportClient.withInterceptors(new TestCallContextAttachingInterceptor());
+		}
+
+		private Vorgang buildVorgang() {
+			return VorgangTestFactory.createBuilder().id(null).version(0).clearEingangs()
+					.eingang(EingangTestFactory.createBuilder().clearRepresentations().clearAttachments().build())
+					.build();
+		}
+
+		private ExportResult exportVorgang() {
+			var result = getExportClient().exportVorgang(GrpcExportVorgangRequest.newBuilder().setVorgangId(vorgang.getId()).build());
+			var fileName = result.next().getVorgangFile().getFileName();
+			var content = new ByteArrayOutputStream();
+			while (result.hasNext()) {
+				ByteString chunkContent = result.next().getVorgangFile().getFileContent();
+				try {
+					content.write(chunkContent.toByteArray());
+				} catch (IOException e) {
+					fail(e);
+				}
+			}
+			return new ExportResult(fileName, content.toByteArray());
+		}
+
+		private record ExportResult(String fileName, byte[] content) {
+		}
+	}
+}
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/archive/TestArchiveEventListener.java b/vorgang-manager-server/src/test/java/de/ozgcloud/archive/TestArchiveEventListener.java
new file mode 100644
index 0000000000000000000000000000000000000000..b05e0b4c93a87bc97e57d264f04b8b2ac42b66f9
--- /dev/null
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/archive/TestArchiveEventListener.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+package de.ozgcloud.archive;
+
+import org.springframework.context.event.EventListener;
+
+import de.ozgcloud.command.VorgangLockedEvent;
+
+public class TestArchiveEventListener {
+
+	@EventListener
+	public void onVorgangLockedEvent(VorgangLockedEvent event) {
+	}
+}
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/PostfachMailITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/PostfachMailITCase.java
index 45c4d3a7ddba762f9f86c7571ed3755b29848c86..50f9f4eb563236de6d0280fdb1d1e16961d9ac3e 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/PostfachMailITCase.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/PostfachMailITCase.java
@@ -77,6 +77,7 @@ import io.grpc.stub.StreamObserver;
 		"grpc.server.in-process-name=postfachitcase",
 		"grpc.client.ozgcloud-command-manager.address=in-process:postfachitcase",
 		"grpc.client.command-manager.address=in-process:postfachitcase",
+		"grpc.client.-manager.address=in-process:postfachitcase",
 		"grpc.client.pluto.address=in-process:postfachitcase",
 		"ozgcloud.osi.postfach.proxyapi.url=http://localhost/ApiProxy/V1/Message",
 		"ozgcloud.osi.postfach.proxyapi.key=1234",
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java
index f73ea147c5bebaf8475ec0fa9206f26780363d4b..263f7b44c8001326979bff7604b57a94e19b04af 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/collaboration/CollaborationITCase.java
@@ -59,6 +59,7 @@ import org.springframework.test.annotation.DirtiesContext;
 import com.google.protobuf.ByteString;
 import com.thedeanda.lorem.LoremIpsum;
 
+import de.ozgcloud.apilib.client_attribute.grpc.OzgCloudClientAttributeMapper;
 import de.ozgcloud.apilib.user.OzgCloudUserId;
 import de.ozgcloud.apilib.user.OzgCloudUserProfile;
 import de.ozgcloud.apilib.user.OzgCloudUserProfileService;
@@ -104,7 +105,6 @@ import net.devh.boot.grpc.client.inject.GrpcClient;
 		"grpc.client.vorgang-manager.address=in-process:test",
 		"grpc.client.ozgcloud-command-manager.address=in-process:test",
 		"grpc.client.file-manager.address=in-process:test",
-		"grpc.client.vorgang-attached-item.address=in-process:test",
 		"grpc.client.inProcess.address=in-process:test",
 		"grpc.client.pluto.address=in-process:test"
 })
@@ -124,13 +124,15 @@ class CollaborationITCase {
 	private MongoOperations mongoOperations;
 
 	@MockBean
-	@Qualifier(CollaborationManagerConfiguration.OZG_CLOUD_USER_PROFILE_SERVICE_NAME)
+	@Qualifier(CollaborationManagerConfiguration.OZGCLOUD_USER_PROFILE_SERVICE_NAME)
 	private OzgCloudUserProfileService collaborationOzgCloudUserProfileService;
 	@MockBean
 	private PostfachRemoteService postfachRemoteService;
 
 	@Mock
 	private OzgCloudUserProfile ozgCloudUserProfile;
+	@MockBean
+	private OzgCloudClientAttributeMapper clientAttributeMapper;
 
 	private String vorgangId;
 
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/user/VorgangManagerCallContextAttachingInterceptorTest.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/user/VorgangManagerCallContextAttachingInterceptorTest.java
index a918e29412eb0103ced498d95b5a6379dd037650..7b050894a0dde18a85c69e03cd070bdd5cdd56f2 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/user/VorgangManagerCallContextAttachingInterceptorTest.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/user/VorgangManagerCallContextAttachingInterceptorTest.java
@@ -15,6 +15,7 @@ import org.mockito.Captor;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 
+import de.ozgcloud.common.grpc.GrpcUtil;
 import io.grpc.CallOptions;
 import io.grpc.Channel;
 import io.grpc.ClientCall;
@@ -68,7 +69,7 @@ class VorgangManagerCallContextAttachingInterceptorTest {
 		void shouldAddRequestId() {
 			var addedMetadata = interceptCall();
 
-			assertThat(addedMetadata.get(createKeyOf(KEY_REQUEST_ID))).isNotNull();
+			assertThat(addedMetadata.get(createKeyOf(GrpcUtil.KEY_REQUEST_ID))).isNotNull();
 		}
 
 		private Metadata interceptCall() {
diff --git a/vorgang-manager-utils/pom.xml b/vorgang-manager-utils/pom.xml
index 8c23fe43fa5a0183052fad5e62bfb07bc1be594a..086b44fc095aa553c3acc0ef22261709de7f1412 100644
--- a/vorgang-manager-utils/pom.xml
+++ b/vorgang-manager-utils/pom.xml
@@ -38,6 +38,7 @@
 	<artifactId>vorgang-manager-utils</artifactId>
 	<name>OZG-Cloud Vorgang Manager Utils</name>
 	<version>2.19.0-SNAPSHOT</version>
+	<inceptionYear>2020</inceptionYear>
 
 	<properties>
 		<maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
@@ -211,32 +212,6 @@
 					</execution>
 				</executions>
 			</plugin>
-			<plugin>
-				<groupId>com.mycila</groupId>
-				<artifactId>license-maven-plugin</artifactId>
-				<configuration>
-					<mapping>
-						<config>SCRIPT_STYLE</config>
-					</mapping>
-					<licenseSets>
-						<licenseSet>
-							<header>license/eupl_v1_2_de/header.txt</header>
-							<excludes>
-								<exclude>**/README</exclude>
-								<exclude>src/test/resources/**</exclude>
-								<exclude>src/main/resources/**</exclude>
-							</excludes>
-						</licenseSet>
-					</licenseSets>
-				</configuration>
-				<dependencies>
-					<dependency>
-						<groupId>de.ozgcloud.common</groupId>
-						<artifactId>ozgcloud-common-license</artifactId>
-						<version>${ozgcloud.license.version}</version>
-					</dependency>
-				</dependencies>
-			</plugin>
 		</plugins>
 	</build>
 </project>