本人翻译目的是用来学习Tapestry5的,共享出来希望大家批评指正。计划持续翻译。
chinajavawolf
配置Tapestry
Tapestry 运行标准的Java Servlet API之上。对于servlet容器,像tomcat,Tapestry看来就像是一个servlet过滤器。这个Tapestry以很大的灵活性去匹配URLs不用要求很多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,并且传递rest off给servlet容器
在有命名冲突的时候,web应用里的真实文件优于Tapestry页。
Tapestry 承认root URL,servlet路径是一个简单的”/”,并且呈现的应用页面是”Start”页,如果它存在的话。
大部分其他的配制发生在你的应用模块建造者类里。这个应用模块建造者将经常定义新的服务,提供替换服务或者制造贡献(contributions)给服务配置。
Tapestry在services包里寻找一个模块建造者类(在root包下)他由首字母大写的< filter-name >(App)和附加的”Module”构成。在前面的例子里,模块建造者类应该是org.example.myapp.services.AppModule。
如果有一个这样的类存在,他被增加到IoC注册中。在你的应用中没有模块这也不是个错误,尽管任何重要的应用都可能有一个模块。
Tapestry还可以通过符号(symbols)被配置。一定数量内建服务(某些甚至不是公共的)通过符号被配置。这些符号可以替换提供给tapestry.ioc.ApplicationDefaults 服务的配置。或从命令行确定jvm系统性能添加-D命令行选项。
默认的期限,很短。Tapestry创建的cookies将被保存在客户端浏览器。默认值是一周。
主要的,这个要使用存在于用户首选本地化踪迹的cookie。
文件系统检查的间隙(毫秒内)。当一个文件系统检查时,只有一个活动的线程(所有其他的被闭塞)并且任何文件加载都被检查是否改变(这是自动组件重载的一部分)。
默认值是1000(一秒),在产品期通常应该用一个更大的值来替换它(比方,在1到5分钟)。
路径是Tapesty内置拷贝script.taculo.us包的路径。这个值可以被替换成不同版本的script.taculo.us库。Tapestry使用的默认版本是1.7.0(包括Prototype 1.5.0)
本地化资源支持一个逗号分隔的列表。引入的请求作为“narrowed”给这些本地化中的一个,基于最接近匹配原则。如果没有找到匹配的,在这个加工过的列表里的第一个资源就作为默认的。
当前默认为”en”
启始页(对于root URL呈现的页面)的逻辑名,通常名为“start”。
分享到:
- 2007-05-16 12:32
- 浏览 2159
- 评论(1)
- 论坛回复 / 浏览 (1 / 2852)
- 查看更多
相关推荐
### Tapestry 5:构建 Web 应用程序 #### 一、Tapestry 5 概述 Tapestry 5 是一个强大的 Java Web 开发框架,它为开发者提供了高效且简洁的方式去创建复杂的 Web 应用程序。本书《Tapestry 5:构建 Web 应用程序》...
### Tapestry开发知识点详解 #### 一、Tapestry简介及其背景 Tapestry是一种用于构建高度可伸缩且易于维护的Web应用程序的Java框架。它最初由Howard Lewis Ship开发,并于2000年发布。Tapestry的设计理念是为了...
"tapestry学习入门资料" Tapestry 是一个开源的基于 servlet 的应用程序框架,它使用组件对象模型来创建动态的、交互的 web 应用。 Tapestry 使得 Java 代码与 HTML 完全分离,利用这个框架开发大型应用变得...
1. **Tapestry Core**: 这是Tapestry框架的基础部分,包含了核心组件、服务容器(Tapestry IoC)和页面生命周期管理。通过源码分析,我们可以理解其如何实现页面组件的渲染、事件处理和依赖注入。 2. **Tapestry ...
Tapestry是一款强大的Java Web应用程序框架,由Apache软件基金会维护,它强调了组件化、模块化和可重用性,使得开发复杂的Web应用变得更加简单。本文将深入介绍Tapestry 4的相关知识点。 1. **组件化编程**: ...
Tapestry是一款强大的Java Web应用程序框架,由Apache软件基金会维护,它提供了一种基于组件的模型来构建动态、数据驱动的Web应用。本教程将帮助初学者了解Tapestry的基本概念,带你逐步入门并掌握其核心组件的使用...
### Tapestry字典知识点概述 #### 一、基础知识 (Using Forms) **1.1 page文件和class文件联系** - **概念**: 在Tapestry中,`page`文件指的是页面定义文件,通常为HTML模板;而`class`文件则是Java类文件,用于...
### Tapestry5:构建Web应用程序 #### 一、Tapestry5概述 Tapestry5是一种先进的、基于Java的Web开发框架,它以其强大的功能、灵活性以及易用性著称。该框架由Howard Lewis Ship创建,并由Apache软件基金会维护。...
Tapestry是一个分布式系统基础设施,专门设计用于实现容错性的广域定位和路由。这个系统由Ben Y. Zhao、John Kubiatowicz和Anthony D. Joseph等人在加州大学伯克利分校的计算机科学部开发,旨在应对无处不在计算的...
2. **Tapestry Core**:`tapestry-core-5.3.8.jar`是Tapestry框架的核心库,包含了框架的基础组件、服务和API。它提供了页面、组件、事件处理、URL映射等功能,是构建Tapestry应用的基础。 3. **Plastic**:`...
**Tapestry 3 开发指南** Tapestry 3 是一个开源的Java Web应用程序框架,它在20世纪90年代末至21世纪初非常流行,由Apache软件基金会维护。这个框架提供了组件化、事件驱动和声明式编程模型,帮助开发者构建动态、...
《Tapestry 5:构建Web应用程序》是关于Tapestry 5框架的一本权威指南。Tapestry 5是一个强大的Java Web应用框架,由Apache软件基金会开发并维护,它致力于提供一种更高效、更优雅的方式来构建动态、交互式的Web应用...
这个压缩包包含了多个以"Tapestry"开头的子文件,如 "tapestry-core", "tapestry-hibernate", "tapestry-ioc", "tapestry-upload", 和 "tapestry-spring",这些都是Tapestry框架的不同模块或插件。这些文件的后缀是...
资源名称:深入浅出Tapestry内容简介:本书以循序渐进的方式,从Tapestry框架技术的基本概念入手,讲解Tapestry框架在J2EE Web应用程序中的整体架构实现。使读者在学习如何使用Tapestry框架技术的同时,还能够获得在...
《深入理解 Tapestry 4.1.5:项目实例与核心库解析》 Tapestry 是一个基于 Java 的开源Web 应用程序框架,它强调组件化开发,提供了一种强大的方式来构建动态、高性能的Web 应用。在"tapestry-project-4.1.5"这个...
8. **tapestry-hibernate-NOTICE.txt, tapestry-hibernate-core-NOTICE.txt, tapestry-ioc-NOTICE.txt**:与对应的LICENSE文件类似,这些NOTICE文件列出了在Tapestry的这些特定模块中使用到的第三方组件和它们的版权...
挂毯React 将React( )与Tapestry( )一起使用。 该库提供了将Tapestry与JSX模板结合... define ( [ 't5/core/dom' , 'react' , 'react-dom' ] , function ( dom , React , ReactDOM ) { var HelloMessage = React
- **tapestry-core**:Tapestry的核心库,包含了框架的主要功能和API。 - **tapestry-test**:测试支持模块,提供了针对Tapestry应用的单元测试和集成测试工具。 - **tapestry-spring**:Tapestry与Spring框架的...
Tapestry是一个基于控件的框架以致于用它开发Web应用类似开发传统的GUI应用。你用Tapestry开发Web应用时你无需关注以操作为中心的(Operation-centric) Servlet API.引用Tapestry网站上的一句话:"Tapestry用对象...