diff --git a/intelliform-adapter/src/main/java/de/ozgcloud/eingang/intelliform/IntelliFormEndpoint.java b/intelliform-adapter/src/main/java/de/ozgcloud/eingang/intelliform/IntelliFormEndpoint.java index f8bd996761a542c149bef0172315626ddc390984..c562cae01b6d903da745260d7e31f29c9b39fb63 100644 --- a/intelliform-adapter/src/main/java/de/ozgcloud/eingang/intelliform/IntelliFormEndpoint.java +++ b/intelliform-adapter/src/main/java/de/ozgcloud/eingang/intelliform/IntelliFormEndpoint.java @@ -42,7 +42,6 @@ import lombok.extern.log4j.Log4j2; @Endpoint @Log4j2 -@RequiredArgsConstructor public class IntelliFormEndpoint { private static final String NAMESPACE_URI = "http://xmlns.cit.de/intelliform/2009/webservices/backend"; @@ -52,8 +51,11 @@ public class IntelliFormEndpoint { private static final QName _DepositResponse_QNAME = new QName(NAMESPACE_URI, "depositResponse"); private static final QName _PrefillResponse_QNAME = new QName(NAMESPACE_URI, "prefillResponse"); - private final IntelliFormMapper intelliFormMapper; - private final SemantikAdapter semantikAdapter; + + @Autowired + private IntelliFormMapper intelliFormMapper; + @Autowired + private SemantikAdapter semantikAdapter; @PayloadRoot(namespace = NAMESPACE_URI, localPart = "deposit") @ResponsePayload diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java index 26a4131246c635ee14f60858fd85193996172ad4..c42fc60a26aeb1e12dcc51249d086181fe677b96 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/SemantikAdapter.java @@ -26,6 +26,7 @@ package de.ozgcloud.eingang.semantik; import java.util.List; import java.util.Optional; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import de.ozgcloud.eingang.common.formdata.FormData; @@ -35,12 +36,14 @@ import de.ozgcloud.eingang.semantik.formbased.FormBasedSemantikAdapter; import lombok.RequiredArgsConstructor; @Service -@RequiredArgsConstructor public class SemantikAdapter { - private final List<EngineBasedSemantikAdapter> engineBasedAdapters; - private final FormBasedSemantikAdapter formBasedAdapter; - private final VorgangService vorgangService; + @Autowired + private List<EngineBasedSemantikAdapter> engineBasedAdapters; + @Autowired + private FormBasedSemantikAdapter formBasedAdapter; + @Autowired + private VorgangService vorgangService; public String processFormData(FormData formData) { formData = parseByEngineAdapter(formData); diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedAdapter.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedAdapter.java index e32e8600f3872923d54bacbbae360bbfa1513522..8f6733cd1d89b68580e8ab128fae413714b87e61 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedAdapter.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedAdapter.java @@ -25,6 +25,7 @@ package de.ozgcloud.eingang.semantik.enginebased.afm; import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import de.ozgcloud.eingang.common.formdata.FormData; @@ -34,12 +35,13 @@ import de.ozgcloud.eingang.semantik.enginebased.afm.intelliform.IntelliFormRepre import lombok.RequiredArgsConstructor; @Component -@RequiredArgsConstructor public class AfmEngineBasedAdapter implements EngineBasedSemantikAdapter { - private final IntelliFormRepresentationAdapter intelliFormRepresentationAdapter; + @Autowired + private IntelliFormRepresentationAdapter intelliFormRepresentationAdapter; - private final List<AfmEngineBasedMapper> mappers; + @Autowired + private List<AfmEngineBasedMapper> mappers; @Override public FormData parseFormData(FormData formData) { diff --git a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedMapper.java b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedMapper.java index 120ea31f036e32490d7a01d4fa8770d47d45305c..f9c67a198432302626fb210f1e87c1901feb9545 100644 --- a/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedMapper.java +++ b/semantik-adapter/src/main/java/de/ozgcloud/eingang/semantik/enginebased/afm/AfmEngineBasedMapper.java @@ -33,8 +33,8 @@ import de.ozgcloud.eingang.semantik.enginebased.EngineBasedMapper; interface AfmEngineBasedMapper extends EngineBasedMapper { - String KOP_CONTROLDATA_NODENAME = "_kopControlData"; - String CONTROLDATA_METADATA_PROPERTYNAME = "metaData"; + String KOP_CONTROLDATA_NODENAME = "_kopControlData"; + String CONTROLDATA_METADATA_PROPERTYNAME = "metaData"; default FormData addControlNode(FormData formData, String nodeName) { var editableFormMap = new LinkedHashMap<>(formData.getFormData()); 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 09024a1f5dee52719697d5fc6d7a425548339bef..1bb43a80e2f70556be226637d2d63ad78de41efe 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,6 +11,7 @@ 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; @@ -27,7 +28,6 @@ import lombok.extern.log4j.Log4j2; @Log4j2 @Component -@RequiredArgsConstructor public class DFoerdermittelEngineBasedSemantikAdapter implements EngineBasedSemantikAdapter { private static final String FACHNACHRICHT_SUFFIX = "Fachnachricht.xml"; @@ -37,7 +37,8 @@ public class DFoerdermittelEngineBasedSemantikAdapter implements EngineBasedSema private static final String KEY_POSTFACH_ID = "InboxReference"; private static final String KEY_ORGANISATIONS_EINHEIT_ID = "MetaText1"; - private final ServiceKontoBuildHelper serviceKontoHelper; + @Autowired + private ServiceKontoBuildHelper serviceKontoHelper; @Override public FormData parseFormData(FormData formData) { diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java index 6f936847d3c5f66dfd55c05b35cf9062d725a44c..a685b0a20bfc5a93b90dcd606cebb2dea31e8187 100644 --- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java +++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java @@ -1,6 +1,6 @@ package de.ozgcloud.eingang.xta; -import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.ws.client.WebServiceClientException; import org.springframework.ws.client.support.interceptor.ClientInterceptor; @@ -8,6 +8,7 @@ import org.springframework.ws.context.MessageContext; import org.springframework.ws.soap.SoapMessage; import de.ozgcloud.eingang.common.errorhandling.TechnicalException; +import eu.osci.ws._2014._10.transport.OriginatorsType; import eu.osci.ws._2014._10.transport.PartyIdentifierType; import eu.osci.ws._2014._10.transport.PartyType; import jakarta.validation.Valid; @@ -16,11 +17,11 @@ import jakarta.xml.bind.JAXBElement; import jakarta.xml.bind.JAXBException; @Component -@RequiredArgsConstructor class WsHeaderAddingInterceptor implements ClientInterceptor { + @Autowired @Valid - private final XtaProperties properties; + private XtaProperties properties; @Override public boolean handleRequest(MessageContext messageContext) throws WebServiceClientException { @@ -46,6 +47,9 @@ class WsHeaderAddingInterceptor implements ClientInterceptor { identifier.setValue(properties.getIdentifier()); partyType.setIdentifier(identifier); + var origin = new OriginatorsType(); + origin.setAuthor(partyType); + return objectFactory.createAuthor(partyType); } diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteService.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteService.java index b543be4a74e03d1f6f453f3071ad51a872c71495..4f59251706db33e1fe5d24ce333fb7f3a255a5a3 100644 --- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteService.java +++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaRemoteService.java @@ -10,6 +10,10 @@ import java.util.Iterator; import java.util.stream.Stream; import javax.xml.namespace.QName; +import javax.xml.transform.TransformerException; + +import jakarta.validation.Valid; +import jakarta.xml.bind.JAXBElement; import org.apache.commons.io.IOUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -43,8 +47,6 @@ import eu.osci.ws._2008._05.transport.MsgSelector; import eu.osci.ws._2008._05.transport.MsgStatusListType; import eu.osci.ws._2008._05.transport.ObjectFactory; import eu.osci.ws._2014._10.transport.MessageMetaData; -import jakarta.validation.Valid; -import jakarta.xml.bind.JAXBElement; import lombok.NonNull; import lombok.extern.log4j.Log4j2; @@ -103,16 +105,19 @@ class XtaRemoteService { } WebServiceMessageCallback buildMarshalCallBack(Object jaxbElement, ActionCallback callback) { - return message -> { - MarshallingUtils.marshal(osciMarshaller, jaxbElement, message); - callback.doWithMessage(message); + return new WebServiceMessageCallback() { + @Override + public void doWithMessage(WebServiceMessage message) throws IOException, TransformerException { + MarshallingUtils.marshal(osciMarshaller, jaxbElement, message); + callback.doWithMessage(message); + } }; } WebServiceMessageExtractor<MsgStatusListTypeAndHeaderResponse> buildHeaderExtractor() { - return new WebServiceMessageExtractor<>() { + return new WebServiceMessageExtractor<MsgStatusListTypeAndHeaderResponse>() { @Override - public MsgStatusListTypeAndHeaderResponse extractData(WebServiceMessage message) throws IOException { + public MsgStatusListTypeAndHeaderResponse extractData(WebServiceMessage message) throws IOException, TransformerException { MsgBoxResponseType header = extractHeader(message); @@ -273,7 +278,7 @@ class XtaRemoteService { @SuppressWarnings("unchecked") ExceptionType exceptionType = ((JAXBElement<ExceptionType>) xoevMarshaller.unmarshal(soapfaultdetailelement1.getSource())).getValue(); - return DETAIL_LOG_TEMPLATE.formatted(exceptionType.getErrorCode().getCode(), exceptionType.getErrorCode().getName()); + return DETAIL_LOG_TEMPLATE.formatted(exceptionType.getErrorCode().getCode(), exceptionType.getErrorCode().getName().toString()); } diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java index 9dcae95b16545544a6a0f9ecab9cd0b2b1411557..2341fbf6dc93899cb0c195ee6f09be52266c5c81 100644 --- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java +++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaService.java @@ -8,6 +8,7 @@ import de.ozgcloud.eingang.common.vorgang.VorgangNummerSupplier; import de.ozgcloud.eingang.xdomea.XdomeaMessageDataMapper; import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import de.ozgcloud.eingang.common.formdata.FormData; @@ -16,16 +17,20 @@ import lombok.extern.log4j.Log4j2; @Service @Log4j2 -@RequiredArgsConstructor class XtaService { static final String XDOMEA_0201_MESSAGE_TYPE = "Geschaeftsgang.Geschaeftsgang.0201"; - private final XtaRemoteService remoteService; - private final XtaMessageMapper mapper; - private final VorgangNummerSupplier vorgangNummerSupplier; - private final XdomeaMessageDataMapper xdomeaMessageDataMapper; - private final XtaIncomingFilesMapper xtaIncomingFilesMapper; + @Autowired + private XtaRemoteService remoteService; + @Autowired + private XtaMessageMapper mapper; + @Autowired + private VorgangNummerSupplier vorgangNummerSupplier; + @Autowired + private XdomeaMessageDataMapper xdomeaMessageDataMapper; + @Autowired + private XtaIncomingFilesMapper xtaIncomingFilesMapper; public Stream<FormData> getMessages() { return createXtaMessageStream().filter(this::isSupportedMessageType).map(this::getFormData);