diff options
author | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-11-22 13:57:41 +0100 |
---|---|---|
committer | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-11-22 14:05:10 +0100 |
commit | 7acd8cf9b3bd0aacea61fff3a07e17b9b57ad8cc (patch) | |
tree | 49d1eec27f2ee74e574d5099ecd56f8e9e56cb32 /src/main/java/at/gv/egiz | |
parent | 9cd371997e9671301d7bae68d75af72687c2860d (diff) | |
download | moa-zs-7acd8cf9b3bd0aacea61fff3a07e17b9b57ad8cc.tar.gz moa-zs-7acd8cf9b3bd0aacea61fff3a07e17b9b57ad8cc.tar.bz2 moa-zs-7acd8cf9b3bd0aacea61fff3a07e17b9b57ad8cc.zip |
Fix Msg Schema Error: Honor Mutual Exclusiveness of <Choice>
- Problem: When activating the QueryPersonRequest, the TNVZ returns an
Identification element that needs to be integrated into the
msg:DeliveryRequest as a child of Receiver. The Identification child
is mutually exclusive to another sequence consisting of (Person,
AustrianAddressesOnly, Address). I forget to delete the sequence
when adding the Identifcation element and violate the the msg
schema.
- Solution: Delete sequence when adding Identification.
- Test the fix in test case.
Thanks to Johannes Hörtnagl for pointing out the problem.
Diffstat (limited to 'src/main/java/at/gv/egiz')
-rw-r--r-- | src/main/java/at/gv/egiz/moazs/scheme/Mzs2MsgConverter.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/scheme/Mzs2MsgConverter.java b/src/main/java/at/gv/egiz/moazs/scheme/Mzs2MsgConverter.java index 522bb1d..b3ad044 100644 --- a/src/main/java/at/gv/egiz/moazs/scheme/Mzs2MsgConverter.java +++ b/src/main/java/at/gv/egiz/moazs/scheme/Mzs2MsgConverter.java @@ -71,7 +71,7 @@ public class Mzs2MsgConverter { public DeliveryRequestType convert(at.gv.zustellung.app2mzs.xsd.DeliveryRequestType mzsRequest, IdentificationType identification) { return setupBuilder(mzsRequest) - .withReceiver(convert(mzsRequest.getReceiver(), identification)) + .withReceiver(convertAndRepaceCombinationSequenceWithIdentification(mzsRequest.getReceiver(), identification)) .build(); } @@ -147,10 +147,13 @@ public class Mzs2MsgConverter { return setupReceiverBuilder(receiver).build(); } - private at.gv.zustellung.msg.xsd.Receiver convert(at.gv.zustellung.app2mzs.xsd.DeliveryRequestType.Receiver receiver, - IdentificationType identificationType) { + private at.gv.zustellung.msg.xsd.Receiver convertAndRepaceCombinationSequenceWithIdentification(at.gv.zustellung.app2mzs.xsd.DeliveryRequestType.Receiver receiver, + IdentificationType identificationType) { return setupReceiverBuilder(receiver) .withIdentification(identificationType) + .withPerson(null) + .withAustrianAddressesOnly(null) + .withAddress(null) .build(); } |