Tiles2.1とSpringMVCが統合された実行中のシステム(Spring Rooの助けを借りて)を使用していて、項目のリストを返す非常に単純なBeanでメニュー項目を設定したいと思います。
public class TestMenu {
public ArrayList<String> getEntries() {
ArrayList<String> returner = new ArrayList<String>();
returner.add("MenuItem 1");
returner.add("MenuItem 2");
return returner;
}
}
私のタイル構成は次のようになります。
<definition name="empty" template="/WEB-INF/layouts/empty.jspx">
<put-attribute name="footer" value="/WEB-INF/views/empty/footer.jspx" />
<put-attribute name="menu" value="/WEB-INF/views/empty/menu.jspx" />
<put-attribute name="menuEntries">
<bean classtype="com.reservation.ui.TestMenu" />
</put-attribute>
</definition>
そして、私のmenu.jspxでは、次のようにmenuItemsを使用するつもりです。
<tiles:useAttribute id="list" name="menuEntries" classname="com.reservation.ui.TestMenu" />
<c:forEach var="item" items="${list.Entries}">
<div class="item">
<div class="left">&nbsp;</div>
<div class="middle">${item}</div>
<div class="right">&nbsp;</div>
</div>
</c:forEach>
似たようなことをするドキュメントや例は見つかりませんでしたが、これは一般的な使用例であると思います。
誰かが適切な解決策を知っていますか?