-
Notifications
You must be signed in to change notification settings - Fork 14
/
ConvertMX2XML.java
109 lines (101 loc) · 4.61 KB
/
ConvertMX2XML.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package com.paymentcomponents.swift.mx;
import gr.datamation.mx.Message;
import gr.datamation.mx.message.pacs.FIToFIPaymentStatusReport11;
public class ConvertMX2XML {
public static void main(String... args) {
execute();
}
public static void execute() {
//You have to initiate the message object using the suitable constructor.
//In order to parse and validate a pacs.002.001.11 you need to use FIToFIPaymentStatusReport11
//FIToFIPaymentStatusReport > matches the xml element <FIToFIPmtStsRpt>
//11 > the version of the pacs.002.001.VERSION which can be found in xmlns attribute of the xml
Message messageObject = new FIToFIPaymentStatusReport11();
try {
//Use parseXML() to fill the messageObject the content of the message
messageObject.parseXML(validPacs002String);
//Use convertToXML() to get the message in text format (XML)
String pacs002ToXml = messageObject.convertToXML();
System.out.println(pacs002ToXml);
} catch (Exception e) {
e.printStackTrace();
System.err.println("Message cannot be parsed");
}
}
private static final String validPacs002String = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<Document xmlns=\"urn:iso:std:iso:20022:tech:xsd:pacs.002.001.11\">\n" +
" <FIToFIPmtStsRpt>\n" +
" <GrpHdr>\n" +
" <MsgId>ABABUS23-STATUS-456/04</MsgId>\n" +
" <CreDtTm>2015-06-29T09:56:00</CreDtTm>\n" +
" <InstgAgt>\n" +
" <FinInstnId>\n" +
" <BICFI>ABABUS23</BICFI>\n" +
" </FinInstnId>\n" +
" </InstgAgt>\n" +
" <InstdAgt>\n" +
" <FinInstnId>\n" +
" <BICFI>AAAAUS29</BICFI>\n" +
" </FinInstnId>\n" +
" </InstdAgt>\n" +
" </GrpHdr>\n" +
" <OrgnlGrpInfAndSts>\n" +
" <OrgnlMsgId>AAAA100628-123v</OrgnlMsgId>\n" +
" <OrgnlMsgNmId>pacs.003.001.08</OrgnlMsgNmId>\n" +
" <OrgnlCreDtTm>2015-06-28T10:05:00</OrgnlCreDtTm>\n" +
" </OrgnlGrpInfAndSts>\n" +
" <TxInfAndSts>\n" +
" <StsId>AB/8568</StsId>\n" +
" <OrgnlEndToEndId>VA060327/0123</OrgnlEndToEndId>\n" +
" <OrgnlTxId>AAAAUS29/100628/ad458</OrgnlTxId>\n" +
" <TxSts>RJCT</TxSts>\n" +
" <StsRsnInf>\n" +
" <Orgtr>\n" +
" <Id>\n" +
" <OrgId>\n" +
" <AnyBIC>ABABUS23</AnyBIC>\n" +
" </OrgId>\n" +
" </Id>\n" +
" </Orgtr>\n" +
" <Rsn>\n" +
" <Cd>AM05</Cd>\n" +
" </Rsn>\n" +
" </StsRsnInf>\n" +
" <OrgnlTxRef>\n" +
" <IntrBkSttlmAmt Ccy=\"USD\">1025</IntrBkSttlmAmt>\n" +
" <IntrBkSttlmDt>2015-06-28</IntrBkSttlmDt>\n" +
" <ReqdColltnDt>2015-07-13</ReqdColltnDt>\n" +
" <MndtRltdInf>\n" +
" <DrctDbtMndt>\n" +
" <MndtId>VIRGAY123</MndtId>\n" +
" </DrctDbtMndt>\n" +
" </MndtRltdInf>\n" +
" <Dbtr>\n" +
" <Pty>\n" +
" <Nm>Jones</Nm>\n" +
" <PstlAdr>\n" +
" <StrtNm>Hudson Street</StrtNm>\n" +
" <BldgNb>19</BldgNb>\n" +
" <PstCd>NJ 07302</PstCd>\n" +
" <TwnNm>Jersey City</TwnNm>\n" +
" <Ctry>US</Ctry>\n" +
" </PstlAdr>\n" +
" </Pty>\n" +
" </Dbtr>\n" +
" <Cdtr>\n" +
" <Pty>\n" +
" <Nm>Virgay</Nm>\n" +
" <PstlAdr>\n" +
" <StrtNm>Virginia Lane</StrtNm>\n" +
" <BldgNb>36</BldgNb>\n" +
" <PstCd>NJ 07311</PstCd>\n" +
" <TwnNm>Jersey City</TwnNm>\n" +
" <Ctry>US</Ctry>\n" +
" </PstlAdr>\n" +
" </Pty>\n" +
" </Cdtr>\n" +
" </OrgnlTxRef>\n" +
" </TxInfAndSts>\n" +
" </FIToFIPmtStsRpt>\n" +
"</Document>\n";
}