質問
練習プロジェクトの1つにツリータグを実装しています。ここでは、ディレクトリの内容をツリー形式で(再帰的に)表示します。私は、JSP2.0より前の日にJavaのカスタムタグと同様の要件を実装していました。 ディレクトリの処理には(サブディレクトリを処理するために)再帰が必要です!これをタグファイルとしてコーディングすることは可能ですか?それらを再帰的に使用できますか?
解決
これは、ノードからすべての子を再帰的に表示する再帰タグファイルの例です( YUIツリービュー):
/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>
これは、次のような通常のJSPファイルで使用できます。
<div id="treeDiv1">
<ul>
<c:forEach var="child" items="${actionBean.rootNode.childs}">
<template:nodeTree node="${child}"/>
</c:forEach>
</ul>
</div>
所属していません StackOverflow