Wie übergibt man Werte von JSP-Fliesen-Attribut?

Bin ich konvertieren eines vorhandenen Fliesen 1 webapp zu Fliesen 2-Architektur. Ich habe Probleme bei der übergabe von Werten aus der JSP-Seite zu Fliesen-Attribute.

Hier ist mein tiles-definitions-Datei (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 sieht wie folgt aus:

<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>

Habe ich eine Geschichte-Seite, die das layout verwendet und müssen für die übergabe von Werten an template-Parametern.

    <%
    //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>

In der Geschichte.jsp kann ich System.aus.print() die Werte für mytitle, myheader und Sie zeigen richtig. Aber diese Werte sind NICHT an die Kachel-Attribute.

Irgendeine Idee, wie man dieses Problem beheben?

InformationsquelleAutor Srinath Dasu | 2012-01-18
Schreibe einen Kommentar