I want to read below XML content and I'm using JAXB parser to convert XML to object. XML doc is in UTF-8 format which contains some utf-8 characters which I'm not getting through my object but getting ??? instead.
XML file data:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<CallDetails>
<APPOINTMENTDATE>29.11.2016</APPOINTMENTDATE>
<APPOINTMENTTIME>29.11.2016 11:11:00</APPOINTMENTTIME>
<ASCCODE>83000220</ASCCODE>
<CALLDESC>작동불</CALLDESC>
<CALLRECEIVEDBY>김정권</CALLRECEIVEDBY>
<CALLRECEIVEDMODECODE></CALLRECEIVEDMODECODE>
<CALLREGBYCAT></CALLREGBYCAT>
<CALLREGBYCODE></CALLREGBYCODE>
<CALLREGDATE>29.11.2016</CALLREGDATE>
<CALLREGTIME>29.11.2016 09:11:00</CALLREGTIME>
<CALLTYPECODE>SVC</CALLTYPECODE>
<COVERAGETYPECODE>UW</COVERAGETYPECODE>
<SPECIALREQUEST></SPECIALREQUEST>
</CallDetails>
Reading file as below,
InputStream inputStream = null;
inputStream = new FileInputStream(path);
InputStreamReader reader = new InputStreamReader(inputStream,"UTF-8");
JAXBContext context = JAXBContext.newInstance(clazz);
Unmarshaller um = context.createUnmarshaller();
InputSource is = new InputSource(reader);
is.setEncoding("UTF-8");
return um.unmarshal(is);
and getting object as below:
THIRDPARTYSERVICEORDERNO = serviceOrderListDTO.getServiceOrderList().get(0).getThirdPartyServiceOrderNo();
CALLDESC = ServiceOrderListDTO.getServiceOrderList().get(0).getCallDetailsList().getCallDesc();
System.out.println("THIRDPARTYSERVICEORDERNO : "+THIRDPARTYSERVICEORDERNO);
System.out.println("CALLDESC: "+CALLDESC);
after running this code, I'm getting output as below,
THIRDPARTYSERVICEORDERNO : AJ16110004904;
CALLDESC: ???;