새로운 형식으로 내 반환 된 XML 응답 문자열 :형식 내가 동일 다음과 같은 문자열 strFees720</p> <p>돌아왔다
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Fees720>
<errorNode>
<errorCode>0</errorCode>
<errorMsg/>
<errorSev/>
</errorNode>
<forwardScroll> 0093101200001117 0</forwardScroll>
<backwardScroll> </backwardScroll>
<Field name="ACCID"><Value>93101200001034</Value></Field>
<Field name="FPERIOD"><Value>2C</Value></Field>
<Field name="STDATE"><Value>13 DEC 2012</Value></Field>
<Field name="ENDATE"><Value>13 DEC 2012</Value></Field>
<Field name="ADVDATE"><Value>19 DEC 2012</Value></Field>
<Field name="DBDATE"><Value> F40LA1C </Value></Field>
<Field name="SNAME"><Value>N SINGLETON JG</Value></Field>
<Field name="ACDESC"><Value>OVERDRAFT AAA</Value></Field>
<Field name="TOTFEES"><Value>0</Value></Field>
<Field name="DISCOUNT"><Value>0</Value></Field>
<Field name="NETFEES"><Value>0</Value></Field>
<Field name="CLRD_BAL"><Value>93101200001034</Value></Field>
<Field name="ALLOW_RTE"><Value>0</Value></Field>
<Field name="DISC_RTE"><Value>0</Value></Field>
<Field name="ALLOW_TOT"><Value>0</Value></Field>
<Field name="PCODE"><Value>0000000</Value></Field>
<Field name="DRILLNSC"><Value>0</Value></Field>
<Field name="DIALOG"><Value>9</Value></Field>
<Field name="NUMLINES"><Value>1</Value></Field>
<Field name="TOTLINES"><Value>0</Value></Field>
<Field name="BPCUST"><Value>P</Value></Field>
<Field name="NFEE_EXPDTE"><Value></Value></Field>
<FEEDATA>
<Field name="FCODE"><Value></Value></Field>
<Field name="FEEDETS"><Value></Value></Field>
<Field name="CHRG_TYPE"><Value></Value></Field>
<Field name="DCODE"><Value></Value></Field>
<Field name="VOLUME"><Value>0</Value></Field>
<Field name="RATE"><Value>0</Value></Field>
<Field name="TOTAL"><Value>0</Value></Field>
<Field name="DRILL"><Value></Value></Field>
</FEEDATA>
<GROSSNETFEES>
<Field name="FQUARTER"><Value>06 DEC 12 12 DEC 12</Value></Field>
<Field name="GRSFEE"><Value>611960</Value></Field>
<Field name="NFEE"><Value>611960</Value></Field>
<Field name="FEEDISC"><Value>0</Value></Field>
</GROSSNETFEES>
<GROSSNETFEES>
<Field name="FQUARTER"><Value>01 DEC 12 05 DEC 12</Value></Field>
<Field name="GRSFEE"><Value>64850</Value></Field>
<Field name="NFEE"><Value>64850</Value></Field>
<Field name="FEEDISC"><Value>0</Value></Field>
</GROSSNETFEES>
<GROSSNETFEES>
<Field name="FQUARTER"><Value>08 NOV 12 30 NOV 12</Value></Field>
<Field name="GRSFEE"><Value>15866</Value></Field>
<Field name="NFEE"><Value>15866</Value></Field>
<Field name="FEEDISC"><Value>0</Value></Field>
</GROSSNETFEES>
<GROSSNETFEES>
<Field name="FQUARTER"><Value>01 NOV 12 07 NOV 12</Value></Field>
<Field name="GRSFEE"><Value>636</Value></Field>
<Field name="NFEE"><Value>616</Value></Field>
<Field name="FEEDISC"><Value>20</Value></Field>
</GROSSNETFEES>
<Field name="TOTGRSFEE"><Value>693312</Value></Field>
<Field name="TOTNETFEE"><Value>693292</Value></Field>
</Fees720>
</Response>
내가 새 XML 문자열로이 XML 문자열 응답을 변환하고 싶습니다를
으로는 다음과 같습니다
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Fees720>
<errorNode>
<errorCode>0</errorCode>
<errorMsg/>
<errorSev/>
</errorNode>
<forwardScroll> 0093101200001117 0</forwardScroll>
<backwardScroll> </backwardScroll>
<accid>93101200001034</accid>
<fperiod>2C</fperiod>
<stdate>13 DEC 2012</stdate>
<endate>13 DEC 2012</endate>
<advdate>19 DEC 2012</advdate>
<dbdate> F40LA1C </dbdate>
<sname>N SINGLETON JG</sname>
<acdesc>OVERDRAFT AAA</acdesc>
<totfees>0</totfees>
<discount>0</discount>
<netfees>0</netfees>
<clrdbal>93101200001034</clrdbal>
<allowrte>0</allowrte>
<discrte>0</discrte>
<allowtot>0</allowtot>
<pcode>0000000</pcode>
<drillnsc>0</drillnsc>
<dialog>9</dialog>
<numlines>1</numlines>
<totlines>0</totlines>
<bpcust>P</bpcust>
<nfeeexpdte></nfeeexpdte>
<feedata>
<fcode></fcode>
<feedets></feedets>
<chrgtype></chrgtype>
<dcode></dcode>
<volume>0</volume>
<rate>0</rate>
<total>0</total>
<drill></drill>
</feedata>
<grossnetfees>
<fquarter>06 DEC 12 12 DEC 12</fquarter>
<grsfee>611960</grsfee>
<nfee>611960</nfee>
<feedisc>0</feedisc>
</grossnetfees>
<grossnetfees>
<fquarter>01 DEC 12 05 DEC 12</fquarter>
<grsfee>64850</grsfee>
<nfee>64850</nfee>
<feedisc>0</feedisc>
</grossnetfees>
<grossnetfees>
<fquarter>08 NOV 12 30 NOV 12</fquarter>
<grsfee>15866</grsfee>
<nfee>15866</nfee>
<feedisc>0</feedisc>
</grossnetfees>
<grossnetfees>
<fquarter>01 NOV 12 07 NOV 12</fquarter>
<grsfee>636</grsfee>
<nfee>616</nfee>
<feedisc>20</feedisc>
</grossnetfees>
<totgrsfee>693312</totgrsfee>
<totnetfee>693292</totnetfee>
</Fees720>
</Response>
내가 라인을 따라 뭔가를 할 필요가 생각하고 of :
strFees720Transform = XSLTransformer.transform("mynewxsl.xsl", strFees720);
원래의 xml을 새로운 xml로 변환하십시오. 최선을 다해 조언 해주세요. 감사합니다
이 방법으로 업데이트
private String getServiceValue(String strXMLResponse, String strNode, String strService) throws ServletException{
String strNodeValue = null;
try{
builder = new SAXBuilder(false);
Document doc = builder.build(new InputSource(new StringReader(strXMLResponse)));
Element root = doc.getRootElement();
Element rootchild = root.getChild(strService);
List rootchildren = rootchild.getChildren();
for (int i=0;i <= rootchildren.size() -1;i++)
{
Element el = (Element) rootchildren.get(i);
if(el.getName().equalsIgnoreCase(strNode)){
strNodeValue = el.getText();
}
}
} catch (Exception err) {
logger.error(err.getMessage(), err);
throw new ServletException(err.getMessage());
}
return strNodeValue;
}
감사를 사용할 수있는 변환을 할 필요가있다. 방금 내 질문을 업데이트했습니다. 이미 getServiceValue() 코드에 메소드가 포함되어 있습니다. 나는 내가 필요한 것을 수행하기 위해 이것을 사용할 수 있는지 또는 새로운 스타일 시트를 만들고 XSLTransformer.transform ("mynewxsl.xsl", strFees720)을 할 것을 제안하는지 궁금하다. ? 다시 한 번 감사드립니다 – topcat3
귀하의 XSL은 훌륭하게 작동했습니다 :) – topcat3
@ topcat3 좀 더 자세한 내용을 추가했습니다 –