Вот что я хотел бы сделать:
<x:forEach var="node" select="$doc//*[name()='item']">
<x:out select="*[name()='${nodeName}']" />
</x:forEach>
Я хочу выбрать узел XML на основе переменной nodeName
.
Приведенный выше код не работает. Единственное решение, которое я могу придумать, выглядит так:
<x:forEach var="node" select="$doc//*[name()='item']/*">
<c:set var="nameTest"><x:out select="name($node)" /></c:set>
<c:if test="${nameTest == nodeName}>
<x:out select="$node" />
</c:if>
</x:forEach>
Это не изящное решение, и на самом деле я на него злюсь.
У кого-нибудь есть идеи получше, пожалуйста?
И для дополнительного веселья я застрял, используя JSTL 1.0