8
我正在將現有的Tiles 1 webapp轉換爲Tiles 2架構。我無法將JSP頁面中的值傳遞給tiles屬性。如何將JSP中的值傳遞給tiles屬性?
這裏是我的瓷磚定義文件(瓷磚-definition.xml)
<tiles-definitions>
<definition name="cda.layout" template="/jsp/layouts/layout.jsp">
<put-attribute name="pageTitle" value="StoryTitle" type="string"/>
<put-attribute name="pageHeader" value="StoryHeader" type="string"/>
<put-attribute name="resources" value="" type="string"/>
</definition>
</tiles-definitions>
的layout.jsp樣子:
<html>
<head>
<title><tiles:insertAttribute name="pageTitle" flush="true"/></title>
</head>
<body>
...
...
<div class="content">
<h1><tiles:insertAttribute name="pageHeader" flush="true"/></h1>
</div>
...
...
</body>
</html>
我有一個使用的佈局詳情頁,需要將值傳遞給模板屬性。
<%
// create a business object and populate
String mytitle= story.getTitle();
String myheader = story.getHeader();
%>
<tiles:insertTemplate template="../layouts/layout.jsp" flush="false" >
<tiles:putAttribute name="pageTitle" value="${mytitle}"/>
<tiles:putAttribute name="pageHeader"value="${myheader}"/>
</tiles:insertTemplate>
在story.jsp,我可以是System.out.print()爲mytitle,myheader的值並且它們被示出正確的。但是,這些值不會傳遞給tile屬性。
任何想法如何解決這一問題?
JB,該解決方案的工作。非常感謝。 – 2012-01-19 15:20:08
感謝您的回答,我正在使用此解決方案,但問題是輸出將是$ {story.title}故事的標題。正如你看到$ {story.title}將被視爲一個變量和值。雖然,我只是從Java而不是JSP傳遞它。 – 2015-04-16 07:05:53