我有一个以下格式的xml文件,我需要阅读 ref = 1111111/0000000和 REF =“2222222/0000000 使用jstl。
<?xml version="1.0" encoding="ISO-8859-1"?>
<TestDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<Data>
<ARUDD>
<Header reportType="REFT1019" ></Header>
<AddresseeInformation name="c company"></AddresseeInformation>
<ServiceLicenseInformation userName="Muhammad" userNumber="785421"></ServiceLicenseInformation>
<Advice>
<OriginatingAccountRecords>
<OriginatingAccountRecord>
<OriginatingAccount name="My Account" ></OriginatingAccount>
<ReturnedDebitItem ref="0000000" >
</PayerAccount>
</ReturnedDebitItem>
<Totals numberOf="1" valueOf="500.00" currency="GBP"></Totals>
</OriginatingAccountRecord>
<OriginatingAccountRecord>
<OriginatingAccount name="Originating account " number="000000" sortCode="00-00-00"></OriginatingAccount>
<ReturnedDebitItem ref="xxxxxxx/0000000 " transCode="17" >
**<PayerAccount number="aaaaaaa" **ref="1111111/0000000"**>**
</PayerAccount></ReturnedDebitItem>
<ReturnedDebitItem ref="yyyyyyy/0000000 " transCode="01" >
**<PayerAccount number="bbbbbbb" **ref="2222222/0000000"** >**
</PayerAccount></ReturnedDebitItem>
<Totals numberOf="111" valueOf="2111" currency="GBP"></Totals>
</OriginatingAccountRecord>
</OriginatingAccountRecords>
</Advice>
</ARUDD>
</Data>
</BACSDocument>
我正在使用的代码(没有任何运气)是
<c:import var="url" url="data.xml"/>
<x:parse xml="${url}" var="doc" />
<x:forEach var="n" select="$doc/TestDocument/Data/ARUDD/Advice/OriginatingAccountRecords/OriginatingAccountRecord/OriginatingAccount/ReturnedDebitItem">
<option> <x:out select="$n/ref" /> </option>
</x:forEach>
我在同一个位置有另一个文件,我可以毫无问题地阅读它。
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<ISO_3166-1_List_en xml:lang="en">
<ISO_3166-1_Entry>
<ISO_3166-1_Country_name>AFGHANISTAN</ISO_3166-1_Country_name>
<ISO_3166-1_Alpha-2_Code_element>AF</ISO_3166-1_Alpha-2_Code_element>
</ISO_3166-1_Entry>
<ISO_3166-1_Entry>
<ISO_3166-1_Country_name>ÅLAND ISLANDS</ISO_3166-1_Country_name>
<ISO_3166-1_Alpha-2_Code_element>AX</ISO_3166-1_Alpha-2_Code_element>
</ISO_3166-1_Entry>
</ISO_3166-1_List_en>
<c:import var="url" url="countries.xml"/>
<x:parse xml="${url}" var="doc" />
<x:forEach var="n" select="$doc/ISO_3166-1_List_en/ISO_3166-1_Entryy">
<!-- select="$output/ISO_3166-1_List_en/ISO_3166-1_Entry[2]/ISO_3166-1_Country_name" -->
<option> <x:out select="$n/ISO_3166-1_Country_name" /> </option>
</x:forEach>
你能帮忙吗?
感谢
答案 0 :(得分:0)
使用其他变量和最小路径查看文件内容:
<x:set var="foo" select="$doc" />
<x:out select="$foo" />