2007-05-16
(A18)Tapestry Core :Configuring Tapestry
关键字: Tapestry5本人翻译目的是用来学习Tapestry5的,共享出来希望大家批评指正。计划持续翻译。
chinajavawolf 配置Tapestry
Tapestry 运行标准的Java Servlet API之上。对于servlet容器,像tomcat,Tapestry看来就像是一个servlet过滤器。这个Tapestry以很大的灵活性去匹配URLs不用要求很多web.xml内的配置。
-
web.xml
大部分配置出现在servlet部署描述符内,WEB-INF/web.xml
大多数配置是样板化的,对于所有应用都是相同的。
应用的特殊配置是确定应用的root包。Tapestry使用这个包名去定位你的包和组件类。
页面类必须放在pages子包里,组件必须放在components子包里。
你指定root包当作context参数。
- PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
- <display-name>My Tapestry Applicationdisplay-name>
- <context-param>
- <param-name>tapestry.app-packageparam-name>
- <param-value>org.example.myappparam-value>
- context-param>
- <filter>
- <filter-name>appfilter-name>
- <filter-class>org.apache.tapestry.TapestryFilterfilter-class>
- filter>
- <filter-mapping>
- <filter-name>appfilter-name>
- <url-pattern>/*url-pattern>
- filter-mapping>
- web-app>
你可以以你想要得任何名称命名过滤器,尽管”app”是一个通常的约定。
在这个例子里,页面类将被存入在org.example.myapp.pages包里(或者在它下面的子包里)。同样,组件类将被存放在org.example.myapp.components包里(或者在它下面的子包里)。
-
Tapestry请求挑战容器请求
Tapestry过滤器匹配所有请求应用于Tapestry,并且传递rest off给servlet容器
在有命名冲突的时候,web应用里的真实文件优于Tapestry页。
Tapestry 承认root URL,servlet路径是一个简单的”/”,并且呈现的应用页面是”Start”页,如果它存在的话。
-
Tapestry IoC配置
大部分其他的配制发生在你的应用模块建造者类里。这个应用模块建造者将经常定义新的服务,提供替换服务或者制造贡献(contributions)给服务配置。
Tapestry在services包里寻找一个模块建造者类(在root包下)他由首字母大写的< filter-name >(App)和附加的”Module”构成。在前面的例子里,模块建造者类应该是org.example.myapp.services.AppModule。
如果有一个这样的类存在,他被增加到IoC注册中。在你的应用中没有模块这也不是个错误,尽管任何重要的应用都可能有一个模块。
-
配置符号
Tapestry还可以通过符号(symbols)被配置。一定数量内建服务(某些甚至不是公共的)通过符号被配置。这些符号可以替换提供给tapestry.ioc.ApplicationDefaults 服务的配置。或从命令行确定jvm系统性能添加-D命令行选项。
-
tapestry.default-cookie-max-age
默认的期限,很短。Tapestry创建的cookies将被保存在客户端浏览器。默认值是一周。
主要的,这个要使用存在于用户首选本地化踪迹的cookie。
-
tapestry.file-check-interval
文件系统检查的间隙(毫秒内)。当一个文件系统检查时,只有一个活动的线程(所有其他的被闭塞)并且任何文件加载都被检查是否改变(这是自动组件重载的一部分)。
默认值是1000(一秒),在产品期通常应该用一个更大的值来替换它(比方,在1到5分钟)。
-
tapestry.scriptaculous
路径是Tapesty内置拷贝script.taculo.us包的路径。这个值可以被替换成不同版本的script.taculo.us库。Tapestry使用的默认版本是1.7.0(包括Prototype 1.5.0)
-
tapestry.supported-locales
本地化资源支持一个逗号分隔的列表。引入的请求作为“narrowed”给这些本地化中的一个,基于最接近匹配原则。如果没有找到匹配的,在这个加工过的列表里的第一个资源就作为默认的。
当前默认为”en”
-
tapestry.start-page-name
启始页(对于root URL呈现的页面)的逻辑名,通常名为“start”。
- 12:32
- 浏览 (1104)
- 论坛浏览 (1180)
- 评论 (1)
- 分类: Tapestry
- 相关推荐
发表评论
该博客是同时发布到论坛的,无法评论在论坛已被锁定的帖子
我的相册
3
共 3 张
共 3 张
最近加入圈子
最新评论
-
(2)Tapestry5学习小结:中 ...
我都是这样做的 public void contributeValidatio ...
-- by walkerstar -
(A18)Tapestry Core :Co ...
我是真的,那么的那么的希望能多贴出一些,代码说出来。既然能翻译干吗不再多总结一下 ...
-- by hongyuzhe -
(A6)Tapestry Core:Form I ...
问个问题呀,我写的时候为什么private UserAuthenticator ...
-- by changshuangyi -
(3)Tapestry5学习小结:显 ...
怪不得我想看5.0的源代码看不了,原来是没有真正的开放出来呢。
-- by zhenjw -
(3)Tapestry5学习小结:显 ...
大哥,小弟刚来,好像这个栏目就成你的专栏了,哈哈 敬佩敬佩
-- by zhenjw







评论排行榜