我正在使用struts2和tiles(2)框架开发BBS。我该如何动态制作标题?
我想在ActionSupport类中推送一个值并在tile的layout.jsp中弹出值。但我只是不能访问价值。
我会一步一步解释我的作品。
1)用户点击链接查看列表页面的文章。而在struts.xml中定义BoardView类将被命名
--list.jsp--
<a href="view_board?num=${num}"> ${ subject } </a>
--struts.xml--
<action name="View_board" class="board.BoardView">
<result type="tiles">board.view</result>
</action>
2)动作类会把标题放入价值堆栈......对吗?
--BoardView分类 -
public class BoardView extends ActionSupport
private String title;
public void Execute() throws Exception {
...
setTitle(board.getSubject());
return SUCCESS;
}
...
(setter and getter of title)
3)ActionClass返回SUCCESS,它会去到一个名为瓦定义board.view
--struts.xml--
<action name="View_board" class="board.BoardView">
<result type="tiles">board.view</result>
</action>
4)这里是tiles-def.xml和问题。我认为'标题'的价值不能从价值堆栈中弹出。
==砖,def.xml ==
<definition name="board.view" extends="layout">
<put-attribute name="title" value="%title" />
<put-attribute name="body" value="/board/view.jsp" />
</definition>
(我无法用标签...对不起缩进)这里的layout.jsp == == layout.jsp
... <title><tiles:getAsString name="title" /></title> ...
我试图将value属性替换为%{title},$ title和$ {title}。但没有解决。 Web浏览器只显示字符串本身($ title)。
我不知道该怎么办......请帮助我。
我希望你们都了解我的作品,尽管我的解释不好。
@Marko - 如果你想upvote你遇到的每一个迟到的答案,请至少改善那些需要他们的。这个答案需要格式化以正确显示代码;因为它是,你批准的答案是没有意义的。 – LittleBobbyTables 2012-11-26 19:29:42