diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java
index 20b6563bd1a8f6dd48a55340a4f803b05b9e542d..f6467d0f714bdcf4f969fede48c36007b3e8c6ad 100644
--- a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryController.java
@@ -3,36 +3,31 @@ package de.ozgcloud.eingang.enterprise.entry;
 import java.io.IOException;
 import java.time.ZonedDateTime;
 
-import org.springframework.beans.factory.annotation.Autowired;
+import lombok.RequiredArgsConstructor;
 import org.springframework.core.io.Resource;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
-import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.ResponseStatus;
+import org.springframework.web.bind.annotation.RestController;
 
 import de.ozgcloud.eingang.common.formdata.FormData;
 import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier;
 import de.ozgcloud.eingang.enterprise.entry.EntryResponse.ResponseVorgang;
 import de.ozgcloud.eingang.semantik.SemantikAdapter;
 
-@Controller
-@ResponseBody
+@RestController
 @RequestMapping("antrag")
+@RequiredArgsConstructor
 public class EntryController {
 
 	private static final String STARTING_STATUS = "NEU";
 
-	@Autowired
-	private EntryDataMapper mapper;
-
-	@Autowired
-	private SemantikAdapter semantikAdapter;
-	@Autowired
-	private VorgangNummerSupplier vorgangNummerSupplier;
+	private final EntryDataMapper mapper;
+	private final SemantikAdapter semantikAdapter;
+	private final VorgangNummerSupplier vorgangNummerSupplier;
 
 	@ResponseStatus(HttpStatus.ACCEPTED)
 	@PostMapping(consumes = "multipart/form-data", produces = MediaType.APPLICATION_JSON_VALUE)
diff --git a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
index 1c2c5340499d72c4101fc52bbbd40ddec37c3c2d..ddbcefa40b341878ac154216c8d184b58b0b6097 100644
--- a/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
+++ b/enterprise-adapter/src/main/java/de/ozgcloud/eingang/enterprise/entry/EntryDataMapper.java
@@ -3,7 +3,7 @@ package de.ozgcloud.eingang.enterprise.entry;
 import java.io.IOException;
 import java.io.InputStream;
 
-import org.springframework.beans.factory.annotation.Autowired;
+import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
@@ -11,12 +11,11 @@ import com.fasterxml.jackson.databind.ObjectMapper;
 import de.ozgcloud.eingang.common.formdata.FormData;
 
 @Component
+@RequiredArgsConstructor
 class EntryDataMapper {
 
-	@Autowired
-	private ObjectMapper objectMapper;
-	@Autowired
-	private FormDataMapper formDataMapper;
+	private final ObjectMapper objectMapper;
+	private final FormDataMapper formDataMapper;
 
 	public FormData mapEntryData(InputStream request) {
 		return formDataMapper.mapEntryData(readRequest(request));
diff --git a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
index 1147f2eac92f1b21a69be5315b79d17833b48f18..bc14537b1630250aa8d3be26dc70419f6343563a 100644
--- a/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
+++ b/formcycle-adapter/formcycle-adapter-impl/src/main/java/de/ozgcloud/eingang/formcycle/FormDataController.java
@@ -32,11 +32,10 @@ import java.util.Objects;
 import java.util.Optional;
 import java.util.UUID;
 
-import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestPart;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
 import de.ozgcloud.common.binaryfile.TempFileUtils;
@@ -53,8 +52,7 @@ import lombok.RequiredArgsConstructor;
 import lombok.extern.log4j.Log4j2;
 
 @Log4j2
-@Controller
-@ResponseBody
+@RestController
 @RequestMapping("formData")
 @RequiredArgsConstructor
 class FormDataController {
diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmHeaderMapper.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmHeaderMapper.java
index 2984f9a6d257eeae0e1c6e2d361383b37d6a2dbb..8e55983c1dd5ac7ea4395aea3b7a8c52b09c7d03 100644
--- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmHeaderMapper.java
+++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmHeaderMapper.java
@@ -23,21 +23,21 @@
  */
 package de.ozgcloud.eingang.semantik.enginebased.afm;
 
-import java.time.ZonedDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Map;
-import java.util.Optional;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
 import de.ozgcloud.eingang.common.formdata.FormData;
 import de.ozgcloud.eingang.common.formdata.FormDataUtils;
 import de.ozgcloud.eingang.common.formdata.FormHeader;
 import de.ozgcloud.eingang.common.formdata.ServiceKonto;
 import de.ozgcloud.eingang.semantik.enginebased.ServiceKontoBuildHelper;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Component;
+
+import java.time.ZonedDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Map;
+import java.util.Optional;
 
 @Component
+@RequiredArgsConstructor
 class AfmHeaderMapper implements AfmEngineBasedMapper {
 
 	static final String AFM_FORMENGINE_NAME = "AFM";
@@ -52,8 +52,7 @@ class AfmHeaderMapper implements AfmEngineBasedMapper {
 	static final String FORM = "t:form";
 	static final String SENDER = "t:sender";
 
-	@Autowired
-	private ServiceKontoBuildHelper serviceKontoBuildHelper;
+	private final ServiceKontoBuildHelper serviceKontoBuildHelper;
 
 	@Override
 	public FormData parseFormData(FormData formData) {
@@ -85,7 +84,7 @@ class AfmHeaderMapper implements AfmEngineBasedMapper {
 
 	Optional<ServiceKonto> createBayernIdServiceKonto(FormData formData) {
 		var postfachId1 = getPostfachId(formData);
-		return postfachId1.map(postfachId -> serviceKontoBuildHelper.buildBayernIdServiceKonto(postfachId));
+		return postfachId1.map(serviceKontoBuildHelper::buildBayernIdServiceKonto);
 	}
 
 	Optional<String> getPostfachId(FormData formData) {
diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapper.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapper.java
index 1e057c6e81f5c937a429d8050c2c8996742026c9..9cbca92ba867286c544ce762119201542b7c6d90 100644
--- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapper.java
+++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmZustaendigeStelleMapper.java
@@ -29,13 +29,13 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
 
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
 import de.ozgcloud.eingang.common.formdata.FormData;
 import de.ozgcloud.eingang.common.formdata.ZustaendigeStelle;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Component;
 
 @Component
+@RequiredArgsConstructor
 class AfmZustaendigeStelleMapper implements AfmEngineBasedMapper {
 
 	public static final String ZUSTAENDIGESTELLE = "zustaendigestelle";
@@ -44,8 +44,7 @@ class AfmZustaendigeStelleMapper implements AfmEngineBasedMapper {
 	public static final String ORGANISATIONSEINHEITEN_ID = "OrganisationseinheitenID";
 	public static final String TAG_BEZEICHNUNG = "OrganisationseinheitenBEZEICHNUNG";
 
-	@Autowired
-	private ZustaendigeStelleMetadataMapper zustaendigeStelleMetadataMapper;
+	private final ZustaendigeStelleMetadataMapper zustaendigeStelleMetadataMapper;
 
 	@Override
 	public FormData parseFormData(FormData formData) {
diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/JsonService.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/JsonService.java
index 04d21f1a271da454917f3a580727e31bc3baac98..28f4773dc71c7f08ccba19c80350149398fea7cf 100644
--- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/JsonService.java
+++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/intelliform/JsonService.java
@@ -3,23 +3,21 @@ package de.ozgcloud.eingang.semantik.enginebased.afm.intelliform;
 import java.util.List;
 import java.util.Map;
 
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
-
 import de.ozgcloud.common.errorhandling.TechnicalException;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Component;
 
 @Component
+@RequiredArgsConstructor
 class JsonService {
 
 	static final TypeReference<List<Map<String, Object>>> VALUE_TYPE_REF = new TypeReference<List<Map<String, Object>>>() {
 	};
 
-	@Autowired
-	private ObjectMapper objectMapper;
+	private final ObjectMapper objectMapper;
 
 	public List<Map<String, Object>> readAsListMap(String json) {
 		return readValueSafety(json, VALUE_TYPE_REF);
diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/dfoerdermittel/DFoerdermittelEngineBasedSemantikAdapter.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/dfoerdermittel/DFoerdermittelEngineBasedSemantikAdapter.java
index bdefe9c7370a826853ad6ba29f40597d3b4ebed8..09024a1f5dee52719697d5fc6d7a425548339bef 100644
--- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/dfoerdermittel/DFoerdermittelEngineBasedSemantikAdapter.java
+++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/dfoerdermittel/DFoerdermittelEngineBasedSemantikAdapter.java
@@ -11,7 +11,6 @@ import java.util.function.Predicate;
 
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.dataformat.xml.XmlMapper;