JSP 宣言タグ関数で HTML を直接出力することは合法ですか?
<%! void recursivePaintLevels(List<String> things, int deepLevel){ %>
<ul class="level-<%=deepLevel%>">
<% for (int i=0; i<things.size(); i++){ %>
<li class="whatever">
//(...)
</li>
<% } %>
</ul>
<% } %>
そして、通常の JSP 本体フローで次のように呼び出します。
//(...)
<% recursivePaintLevels(things, 1); %>
つまり、暗黙的な out.println() の同じ通常の JSP ロジックをメソッドで使用するようなものです。私にとっては機能していません(Eclipseは「構文エラー、TryStatementを完了するために「最後に」を挿入してください」と言います)が、私のエラーがそれと関係があるかどうかはわかりません。
JSLT と EL を使用する必要があることもわかっていますが、これが私の選択です。