MessageAnalysis.java
2.4 KB
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
package com.sy.bwAnalysis;
import com.sy.bwAssist.Message;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
import com.thoughtworks.xstream.io.xml.XmlFriendlyNameCoder;
public class MessageAnalysis {
public static Message message = null;
public Message readTicketsXml(String str) {
return getMessage(str);
}
static Message getMessage(String str) {
XStream xstream = new XStream(new DomDriver("UTF-8", new XmlFriendlyNameCoder("_-", "_")));
xstream.processAnnotations(Message.class);
//对xstream对象设置默认的安全防护
XStream.setupDefaultSecurity(xstream);
//对xstream对象设置默认的安全防护时,允许设置类
xstream.allowTypes(new Class[]{Message.class});
message = (Message) xstream.fromXML(str);
return message;
}
/* public static void main(String[] args) {
Message msg = new MessageAnalysis().readTicketsXml("<MSG> \n" +
" <META> \n" +
" <SNDR>NXCD</SNDR> \n" +
" <RCVR/> \n" +
" <SEQN>20190423105931</SEQN> \n" +
" <DDTM>20190423105931</DDTM> \n" +
" <TYPE>CUST</TYPE> \n" +
" <STYP>CDHZ</STYP> \n" +
" </META> \n" +
" <Manifest><Head><MessageID>CN_MT5202_1P0_460470678920X_20190423105611544</MessageID><FunctionCode>2</FunctionCode><MessageType>MT5202</MessageType><SenderID>EPORT</SenderID><ReceiverID>460470678920X_DXPENT0000019806</ReceiverID><SendTime>20190423105647834</SendTime><Version>1.0</Version></Head><Response><BorderTransportMeans><JourneyID>7L062/20190420</JourneyID><ID>7L062</ID></BorderTransportMeans><Consignment><TransportContractDocument><ID>50106370991</ID></TransportContractDocument><ResponseType><Code>01</Code><Text>35301 理货报告传输成功。比对结果为:理货正常。</Text></ResponseType></Consignment></Response></Manifest>\n" +
" </MSG>");
RESMESSAGE resmessage = new ResMessageAnalysis().saveEntry(msg.getManifest());
System.out.println(resmessage);
}*/
}