Tapestry范例
应用程序项目配置
1. web.xml配置文件
<?xml version=” 1.0” encoding=”UTF -8” ?>
<!DOCTYPE web-app PUBLIC ”-//SUN Microsystems, Inc.//DTD Web Application 2.3//EN” “http://java.sun.com/dtd/web-app_2.3.dtd”>
<web-app>
<display-name>MyTapestry4</display-name>
<filter>
<filter-name>redirect</filter-name>
<filter-class>org.apache.tapestry.RedireectFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>redirect</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>MyTapestry4</servlet-name>
<servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servleet-mapping>
<servlet-name>MyTapestry4</servlet-name>
<url-pattern>/app</url-pattern>
</servlet-mappint>
</web-app>
Tapestry应用程序必须使用ApplicationServlet作为他们的Serlet。有必要可以定义一个子类继承他。
2. Tapestry应用程序规范
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE application PUBLIC "-//Apache Software Foundation//Tapestry Specification 4.0//EN" "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd">
<application name="MyTapestry4">
<meta key="org.apache.tapestry.page-class-packages" value="com.tapestry4.page" />
<meta key=”org.apache.tapestry.visit-class” value=”com.tapestry4.engine.MyVisit”>
<meta key=”org.apache.tapestry.disable-caching” value=”true” />
</application>
应用程序规范文件名称必须与应用程序Servlet同名
Tapestry页面组成结构
HTML模版、页面规范和页面类
HTML模版
现在来细说一下关于HTML模版。当然针对HTML的FORM表单依然是以组件的形式进行连接即<form jwcid=”name”></form>
对于其他的input类型也是设置相应的jwcid=”name”这些也是后面需要说的隐式调用。
页面规范
其实在之前的笔记中也做了一些格式性的说明,固定的XML文件头声明,DOCTYPE声明等都不用多说,只是一些元素的自定义与HTML模版的JWCID进行关联等方式需要针对性修改。
<component id=”name” type=”组件类型(HTML类型)”>
<binding name=”” value=””> //这个value和name需要在tapestry文档里进行查阅
</component>
页面类
这是继承于BaseePage类的。Tapestry有个特殊,也就是不需要为页面属性指定类型。其实在我理解,页面类就好比是页面本身的一个业务处理结构与业务处理工作的中心环境,提供对用户数据的分析处理,让程序能够按照业务流程进行工作。