接上例:http://blog.csdn.net/kunshan_shenbin/archive/2008/11/18/3325296.aspx
同讨论T3时一样,这里也该谈谈T4的布局管理。
T3版本参考:http://blog.csdn.net/kunshan_shenbin/archive/2008/11/14/3300058.aspx
如下图所示建立工程:
所需Jar包同上例一致。
代码如下:
Border.html
- <html>
- <head><title><span jwcid="@Insert" value="ognl:title"/></title></head>
- <body>
- <span jwcid="@RenderBlock" block="ognl:page.components.header"/>
- <table>
- <tr>
- <td width="40%">
- <a href="" jwcid="@PageLink" page="Home"
- disabled="ognl:page.pageName.equals('Home')">Home</a><br>
- <a href="" jwcid="@PageLink" page="Products"
- disabled="ognl:page.pageName.equals('Products')">Products</a><br>
- <a href="" jwcid="@PageLink" page="Contact"
- disabled="ognl:page.pageName.equals('Contact')">Contact</a>
- </td>
- <td>
- <span jwcid="@RenderBody">This is the page content.</span>
- </td>
- </tr>
- </table>
- </body>
- </html>
Border.jwc
- <?xml version="1.0"?>
- <!DOCTYPE component-specification PUBLIC
- "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
- "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
- <component-specification>
- <parameter name="title"/>
- <parameter name="header"/>
- </component-specification>
Contact.html
- <html>
- <head><title>Contact</title></head>
- <body jwcid="$content$">
- <span jwcid="@Border" title="Contact">
- This is the Contact page.
- </span>
- </body>
- </html>
Contact.page
- <?xml version="1.0"?>
- <!DOCTYPE page-specification PUBLIC
- "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
- "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
- <page-specification>
- </page-specification>
Home.html
- <html>
- <head><title>Home</title></head>
- <body jwcid="$content$">
- <span jwcid="header@Block"><h1>Home header</h1></span>
- <span jwcid="@Border" title="Home" header="ognl:components.header">
- This is the Home page.
- </span>
- </body>
- </html>
Home.page
- <?xml version="1.0"?>
- <!DOCTYPE page-specification PUBLIC
- "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
- "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
- <page-specification>
- </page-specification>
Layout.application
- <!DOCTYPE application PUBLIC
- "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
- "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
- <application name="Layout">
- </application>
Products.html
- <html>
- <head><title>Products</title></head>
- <body jwcid="$content$">
- <span jwcid="@Border" title="Products">
- This is the Products page.
- </span>
- </body>
- </html>
Products.page
- <?xml version="1.0"?>
- <!DOCTYPE page-specification PUBLIC
- "-//Apache Software Foundation//Tapestry Specification 4.0//EN"
- "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
- <page-specification>
- </page-specification>
web.xml
- <?xml version="1.0"?>
- <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/TR/xmlschema-1/"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
- <display-name>Layout</display-name>
- <servlet>
- <servlet-name>Layout</servlet-name>
- <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>Layout</servlet-name>
- <url-pattern>/app</url-pattern>
- </servlet-mapping>
- </web-app>