From abbc1e1576b9ac43f71aff6e4ca7697dcb12154a Mon Sep 17 00:00:00 2001 From: Christof Rabensteiner Date: Mon, 8 Apr 2019 15:31:10 +0200 Subject: Update Codebase to Match MZS Schema Changes - Important Fix: I forgot to annotate App2MzsService with @Service and autowire the App2MzsService object when creating the endpoint bean. For this reason, Spring did not autowire the dependencies in App2MzsService and I ended up with NullPointerExceptions in the testsuite. - Updated some more namespaces - Add objectFactory bean. objectfactory is autogenerated via the cxf-code-generation plugin, so i cannot annotate it with @Component or @Service. Alternative: create the @Bean by myself - Update the validDeliveryRequest SOAP Message to match the mzs 2.0.0 scheme. --- src/main/java/at/gv/egiz/moazs/App2MzsService.java | 4 +- .../at/gv/egiz/moazs/App2MzsServiceConfig.java | 10 ++- .../java/at/gv/egiz/moazs/App2MzsServiceTest.java | 3 +- .../formallyIncorrectDeliveryRequest.soap | 7 +- .../App2MzsServiceTest/validDeliveryRequest.soap | 98 +++++++++++----------- 5 files changed, 66 insertions(+), 56 deletions(-) (limited to 'src') diff --git a/src/main/java/at/gv/egiz/moazs/App2MzsService.java b/src/main/java/at/gv/egiz/moazs/App2MzsService.java index a9c4302..2f06f7b 100644 --- a/src/main/java/at/gv/egiz/moazs/App2MzsService.java +++ b/src/main/java/at/gv/egiz/moazs/App2MzsService.java @@ -3,6 +3,7 @@ package at.gv.egiz.moazs; import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs.App2MzsPortType; import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.*; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; import javax.jws.WebParam; import java.math.BigInteger; @@ -12,11 +13,12 @@ import java.util.concurrent.TimeoutException; import static java.util.concurrent.CompletableFuture.supplyAsync; +@Service public class App2MzsService implements App2MzsPortType { //TODO move timeout to config private final int timeoutForAnwser = 10; - private final String MZSTNS = "http://reference.e-government.gv.at/namespace/moazs10/app2mzs#"; + private final String MZSTNS = "http://reference.e-government.gv.at/namespace/zustellung/mzs/app2mzs#"; @Autowired private DeliveryRequestHandler deliveryRequestHandler; diff --git a/src/main/java/at/gv/egiz/moazs/App2MzsServiceConfig.java b/src/main/java/at/gv/egiz/moazs/App2MzsServiceConfig.java index 64e353d..578fecd 100644 --- a/src/main/java/at/gv/egiz/moazs/App2MzsServiceConfig.java +++ b/src/main/java/at/gv/egiz/moazs/App2MzsServiceConfig.java @@ -1,5 +1,6 @@ package at.gv.egiz.moazs; +import at.gv.e_government.reference.namespace.zustellung.mzs.app2mzs_.ObjectFactory; import org.apache.cxf.Bus; import org.apache.cxf.jaxws.EndpointImpl; import org.springframework.beans.factory.annotation.Autowired; @@ -14,12 +15,19 @@ public class App2MzsServiceConfig { @Autowired private Bus bus; + @Autowired + private App2MzsService app2mzsService; + @Bean public Endpoint endpoint() { - EndpointImpl endpoint = new EndpointImpl(bus, new App2MzsService()); + EndpointImpl endpoint = new EndpointImpl(bus, app2mzsService); endpoint.setAddress("/"); endpoint.publish(); return endpoint; } + @Bean + public ObjectFactory objectFactory() { + return new ObjectFactory(); + } } diff --git a/src/test/java/at/gv/egiz/moazs/App2MzsServiceTest.java b/src/test/java/at/gv/egiz/moazs/App2MzsServiceTest.java index 5879fa2..6874c75 100644 --- a/src/test/java/at/gv/egiz/moazs/App2MzsServiceTest.java +++ b/src/test/java/at/gv/egiz/moazs/App2MzsServiceTest.java @@ -45,8 +45,7 @@ public class App2MzsServiceTest { var response = client.send(request, HttpResponse.BodyHandlers.ofString()); logger.info("response.body was " + response.body()); logger.info("response.code was " + response.statusCode()); - - //TODO Verify response + assertThat(response.statusCode()).isEqualTo(200); } diff --git a/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/formallyIncorrectDeliveryRequest.soap b/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/formallyIncorrectDeliveryRequest.soap index bf38ab1..e8bd7f2 100644 --- a/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/formallyIncorrectDeliveryRequest.soap +++ b/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/formallyIncorrectDeliveryRequest.soap @@ -2,8 +2,8 @@ @@ -47,6 +47,7 @@ deckblatt - + + diff --git a/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/validDeliveryRequest.soap b/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/validDeliveryRequest.soap index 662a161..91c0d61 100644 --- a/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/validDeliveryRequest.soap +++ b/src/test/resources/at/gv/egiz/moazs/App2MzsServiceTest/validDeliveryRequest.soap @@ -1,52 +1,52 @@ - - - - SampleProfile2 - - - - - - Maxi - Mustermann1 - - 1984-01-24 - - - AT - 1010 - Wien - - Muststrasse - 10 - - - - - asd - nonRSa - false - - - - - Hello There! - -

How are you

-

Nice to hear from you!

-

Regards, V

- -
-
- deckblatt -
-
-
+ xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:mzs="http://reference.e-government.gv.at/namespace/zustellung/mzs/app2mzs#" + xmlns:p="http://reference.e-government.gv.at/namespace/zustellung/mzs/persondata#" + xmlns:msg="http://reference.e-government.gv.at/namespace/zustellung/msg/phase2/20181206#" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + + + + + Bundesministerium für Testzwecke + + https://authority.gv.at/delivery_notification + + + + + Maxi + Mustermann1 + + 1984-01-24 + + + AT + 1010 + Wien + + Muststrasse + 10 + + + + + asd + WichtigeMitteilung + RSa + + + https://authority.gv.at/files/73bdf969781ba41fa07df1ff8439cf685c0db1c3 + brief.xml + application/xml + + SHA1 + 9b972c70fdaf5e1b26b3387c87b0ffb72e5940b6 + + 123401 + + +
-- cgit v1.2.3