Pregunta

Estoy implementando una etiqueta de árbol para uno de mis proyectos de práctica, donde mostraría el contenido de un directorio en forma de árbol (recursivamente). Había implementado un requisito similar a una etiqueta personalizada en Java durante los días anteriores a JSP2.0. ¡El manejo de un directorio necesita recursividad (para manejar los subdirectorios)! ¿Es posible codificar esto como archivos de etiquetas y pueden usarse de manera recursiva?

¿Fue útil?

Solución

Aquí hay un ejemplo de un archivo de etiqueta recursiva que muestra desde un nodo todos sus elementos secundarios de forma recursiva (utilizado para generar un YUI treeview ):

/WEB-INF/tags/nodeTree.tag :

<%@tag description="display the whole nodeTree" pageEncoding="UTF-8"%>
<%@attribute name="node" type="com.myapp.Node" required="true" %>
<%@taglib prefix="template" tagdir="/WEB-INF/tags" %>
<li>${node.name}
<c:if test="${fn:length(node.childs) > 0}">
    <ul>
    <c:forEach var="child" items="${node.childs}">
        <template:nodeTree node="${child}"/>
    </c:forEach>
    </ul>
</c:if>
</li>

Esto se puede usar en un archivo JSP normal como este:

<div id="treeDiv1">
    <ul>
        <c:forEach var="child" items="${actionBean.rootNode.childs}">
            <template:nodeTree node="${child}"/>
        </c:forEach>
    </ul>
</div>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top