发行说明5.1

目录

Tapestry版本5.1.0.5

修复了Bug

  • TAP5-604型–ValidationMessages_da.properties包含无效的格式字符串
  • 抽头5-664–模板文档中指定的“旧版”URI不正确
  • TAP5-665型–挂毯SSL页面上的IE 6抱怨不安全的项目(由blackbird js-logging组件引起)
  • TAP5-666型–属性表达式无法将布尔常量传递到方法中
  • TAP5-668型–BeanModel文档应该更加清楚,使用add(String)时必须存在属性。
  • TAP5-670型–由于强制转换错误,无法编译ParallelExecutorTest

所做的改进

  • TAP5-214型–记录资产的使用:和上下文:直接从模板文件引用资产
  • TAP5-506型–DateField组件的意大利本地化
  • TAP5-531型–添加食谱文档,以展示如何使用代理组件实现类似开关的行为
  • TAP5-579型–芬兰国际化缺少5.1中的一些要点
  • TAP5-651型–如果组件文档:标识p:名称空间的使用

新增功能

  • TAP5-223型–允许属性文件(在类路径或上下文中)用作SymbolProviders
  • TAP5-580型–将get()方法添加到TestBase,以允许通过反射读取对象的私有字段
  • TAP5-601型–为客户端JavaScript消息添加德语翻译

Tapestry版本5.1.0.4

修复了Bug

  • TAP5-130型–如果项目的路径名包含空格,Tapestry组件报告将失败
  • TAP5-353型–网格组件的volatile参数描述具有误导性,应明确应用程序负责跟踪行
  • TAP5-500型–Cookies服务的javadoc注释中有小错误。
  • TAP5-501型–在Component interface javadoc中,应删除“This interface is possible to change without notice”一句,或将接口移动到内部包中
  • TAP5-524型–未包含在组件参考中的嵌入式组件公开的已发布参数
  • 抽头5-571–错误的<t:parameter>会导致无法理解的异常
  • TAP5-613型–如果事件是从不安全页面发送的,则从ajax事件处理程序方法返回到安全页面的链接会导致重定向无效
  • TAP5-622型–客户端ID不应包含“:”字符,因为这可能会混淆基于WebKit的浏览器
  • TAP5-631型–使用tapestry-spring时,贡献的ApplicationInitializer并不总是执行
  • TAP5-640型–渲染期间DOM操作可以NPE
  • TAP5-641型–自身继承的继承参数将显示为空
  • TAP5-644型–使用PageTester时,页面中的异常被呈现异常报告页面的异常隐藏(第2部分)
  • TAP5-646型–当Tapestry组合JavaScript文件时,它应该检查以未终止注释结尾的JS文件,并添加注释终止符
  • TAP5-647型–Quickstart原型不应包含tapestry-test依赖项,因为Selenium中嵌入的Jetty妨碍了Eclipse中的RunJettyRun
  • TAP5-648型–Tapestry应该更加注意在<head>中添加新元素的位置
  • TAP5-649型–包含不包含表单元素的循环组件的表单仍然编码到t:formdata隐藏字段
  • TAP5-652型–脚本标记缺少必需的属性类型
  • TAP5-653型–将上下文附加到“索引”页面的URL会导致斜杠过多
  • 水龙头5-659–在某些servlet容器中,访问虚拟资产可能会导致GZIP相关的异常
  • TAP5-660型–从String到DateFormat的类型强制将始终使用服务器的默认区域设置,而不是当前的每线程区域设置

所做的改进

  • TAP5-274型–应用程序状态对象是一个误导性术语;将@ApplicationState重命名为@SessionState
  • TAP5-612型–URL更新应区分传入和传出请求
  • TAP5-629型–确保blackbird控制台出现在其他页面元素的顶部
  • 水龙头5-654–改进组件类文档,以更清楚地了解@component和t:id之间的关系
  • TAP5-655型–Quickstart原型应设置应用程序版本号以匹配模块版本号
  • TAP5-657型–FieldFocusPriority枚举应包含一个附加值OVERRIDE,以指示手动聚焦的字段(具有最高优先级)
  • TAP5-661型–一些轻微的文档错误

新增功能

  • TAP5-624型–支持区域更新时的javascript回调
  • TAP5-642型–记录如何配置Glassfish 2.1以部署Tapestry应用程序
  • TAP5-662型–组件文档应确定组件可能触发的事件

Tapestry版本5.1.0.3

修复了Bug

  • TAP5-469型–ResponseCompressionAnalyzer:默认情况下,应用程序/json响应应该是不可压缩的
  • TAP5-596型–对javadoc中parameter注释的allowNull参数的错误描述
  • TAP5-602型–即使使用@InjectService,也无法通过服务为TypeCoercer提供帮助
  • TAP5-603型–BeanEditForm排序行为与文档不一致
  • TAP5-608型–5.1.0.2的快速启动原型被破坏:缺少META-INF/maven/archetype.xml
  • 抽头5-610–URL没有完全优化,“/index”没有在应该的时候剥离
  • TAP5-615型–Tapestry模板解析应忽略任何Tapestry-specific元素的大小写(例如t:body、t:content等)
  • TAP5-616型–隐藏组件无法正确解码提交的数据
  • TAP5-621型–使用PageTester时,页面中的异常被呈现异常报告页面的异常隐藏
  • TAP5-625型–快速入门原型不应将Apache版权放在web.xml(或其他文件)中
  • TAP5-626型–Layout.tml中的版权消息是“groupid”,而不是扩展的groupid值
  • 水龙头5-630–Blackbird错误控制台类名太通用,很容易冲突
  • TAP5-636型–在某些情况下,使用带null值的Element.forceAttribute()可能会在渲染期间导致稍后的NPE

所做的改进

  • TAP5-432型–允许设置FormFragment组件的id
  • TAP5-483型–内部版本中的Maven警告:[警告]使用平台编码(实际上是MacRoman)复制筛选的资源,即内部版本依赖于平台!
  • TAP5-614型–间隔图像应具有空白的alt属性,以满足w3c可访问性标准
  • TAP5-634型–谷歌应用程序引擎支持:能够禁用创建新线程的代码

新增功能

  • TAP5-548型–tapestry.js中的文本消息应拆分为可本地化的单独.js文件

已完成的任务

愿望

  • TAP5-619型–将参数添加到PropertyEditor,以允许使用自定义BeanBlockSource代替默认BeanBlock Source

Tapestry版本5.1.0.2

修复了Bug

  • TAP5-39型–为用于配置某些客户端对象(即使它们不是真正的JSON)的文本(通常是内联函数定义)添加JSON支持
  • TAP5-573型–AJAX表单提交期间出现NullPointerException
  • 抽头5-578–如果组件类是抽象的,尝试实例化它(通过将其包含在模板中)会产生难以理解的InstantiationError
  • TAP5-590型–非必填字段的JavaScript错误将强制将Ajax表单提交作为整页请求处理
  • TAP5-593型–当会话无效时,调用ApplicationStateManager.exists()将引发异常
  • TAP5-598型–tapestry.js中的硬编码消息未本地化
  • TAP5-600型–新的Blackbird控制台使Safari JavaScript完全不起作用

所做的改进

  • 水龙头5-265–添加一个隐藏组件,用于在服务器和客户端之间同步值
  • TAP5-398型–Tapestry应检查服务范围是否与服务一致(如果范围需要服务接口而服务不提供服务接口,则引发异常)
  • TAP5-566型–TextField文档应解释为什么示例中未绑定所需的值参数
  • TAP5-581型–快速启动原型应包括testng.xml和webdefault.xml
  • TAP5-584型–当根元素不是html时,忽略生成器元(来自head元素)
  • TAP5-586型–在呈现部分Ajax响应时,无需添加JavaScript waitForPage()处理程序
  • TAP5-589型–向DOM Element类添加一个方法,以允许获取Attributes集合
  • TAP5-591型–常见问题解答:从服务创建页面呈现链接
  • TAP5-605型–应该有一种简单的方法覆盖自动JavaScript库和样式表

新增功能

  • TAP5-288型–将JavaScript客户端日志记录替换为Blackbird
  • TAP5-549型–JavaScript库应合并为单个请求
  • TAP5-557型–支持URL重写
  • TAP5-562型–tapestry-hibernate应该提供一个内置的状态页面,以显示基本的hibernate统计信息,包括缓存命中率等。
  • 抽头5-594–添加简单的PageRenderLinkSource服务,允许服务创建指向页面的链接

已完成的任务

Tapestry版本5.1.0.1

修复了Bug

  • TAP5-211型–客户端对数字用户输入的验证没有考虑用户的区域设置,这在用户“自然”输入数字时会导致虚假的客户端和服务器端异常
  • TAP5-374型–如果请求是从pageAttached()方法初始化的,则请求之间的Persistent(@Persist)字段设置不正确
  • 抽头5-512–有关如何保护页面的文档包含示例代码中的错误
  • TAP5-520型–如果regexp包含公共字符(包括逗号),则使用带有@Validate注释的正则表达式会导致奇怪的解析错误
  • TAP5-530型–文档应确定如何从Tapestry360 Maven存储库(而非快照存储库)引导捕获快速入门原型
  • TAP5-535型–PageTester应使用FactoryDefaults的覆盖,而不是ApplicationDefaults
  • TAP5-537型–PersistentLocale.setLocale()允许应用程序设置不受支持的区域设置,并且后续URL可能无法正确解释
  • TAP5-552型–常见的压缩图像文件应配置为在发送到客户端时不重新压缩:GIF、PNG
  • TAP5-555型–挂毯。如果<head>中的<script>标记没有href,则ScriptManager.contains抛出错误
  • TAP5-559型–非正式参数已开始覆盖以前呈现的属性

所做的改进

  • TAP5-84型–更改代理生成以使用可变字段而不是同步块
  • TAP5-108型–Ajax请求的组件事件处理程序应具有更新客户端上多个区域的机制
  • TAP5-345型–AjaxFormLoop应该能够根据其值参数的类型推断出默认的ValueEncoder
  • TAP5-367型–网格组件的“没有要显示的数据。”消息应来自消息目录,以支持全局覆盖和本地化
  • 抽头5-418–对创建页面呈现和组件事件请求的控制应封装到可重写的服务中
  • TAP5-502型–改进文档中参数传递和绑定的描述
  • TAP5-525型–组件报告应指明引入参数或组件的Tapestry版本
  • TAP5-527型–输入验证文档缺少可用验证器的清晰列表及其要使用的正确符号。
  • TAP5-536型–将ClientBehaviorSupport移至公共服务包
  • TAP5-540型–通过创建BigDecimal转换器并启用DecimalFormat中的parseBigDecimal,允许精确解析数字客户端输入
  • 抽头5-543–ProgressiveDisplay组件应支持上下文参数并触发事件,以通知容器要显示哪些数据
  • TAP5-544型–改进JavaScript处理,防止用户在页面“就绪”之前单击面向Ajax的链接和表单
  • TAP5-545型–升级到Scriptaculous 1.8.2(2008年11月发布)
  • TAP5-547型–在异常报告页面中,JVM系统属性org.apache.catalina.jsp_classpath应像其他.path值一样显示为列表
  • TAP5-550型–通过避免元素中的列表和映射来减少eden空间占用
  • TAP5-564型–添加StringPropertySelectModel

新增功能

  • TAP5-43型–添加配置以在开发时关闭@Secure
  • TAP5-74型–提供一种方法,使组件子类可以将其模板与其容器的模板合并
  • TAP5-92型–添加新元素t:remove,删除模板的一部分
  • TAP5-236型–实现通过Ajax加载内容的渐进式增强组件
  • TAP5-485型–跟踪com.formos.tapestry:tapestry-template所需更改的问题
  • TAP5-542型–添加ParallelExecutor服务以允许在线程池中异步执行操作
  • TAP5-560型–添加一个负责对客户端数据进行编码(作为gzipp’ed base 64)并解码该数据的服务
  • TAP5-563型–能够将模板的有效内容限制为一小部分(类似于Tapestry 4的$content$marker)

Tapestry版本5.1.0.0

修复了Bug

  • TAP5-217型–与服务配置验证相关的警告应升级为异常
  • TAP5-292型–字段注入不支持注入配置或其他服务资源,仅支持依赖项
  • TAP5-298型–Palette中禁用选项的JS错误
  • TAP5-330型–属性表达式无法识别从java.lang.Object中继承的方法,如toString()
  • 水龙头5-334–组件字段应允许@InjectService注释以及@Inject
  • TAP5-341型–当贡献方法请求错误的配置接口(例如,configuration而不是OrderedConfiguration)时,错误消息令人困惑:“没有服务实现配置接口”
  • TAP5-349型–Tapestry静默地允许MarkupWriter设置一系列根元素,忽略除最后一个元素以外的所有元素。一个文档应该只有一个根元素,这种情况应该立即例外。
  • TAP5-355型–TapestrySpring不支持Spring FactoryBeans的注入
  • TAP5-357型–Tapestry文档应清楚/粗体地标识版本号
  • TAP5-359型–将电子邮件验证器与客户端验证一起使用会显示一条弹出错误消息,说明客户端验证器“电子邮件”丢失
  • TAP5-370型–DocumentLinker中关于缺少<html>标记的错误,即使对于不带JavaScript的XML文档也是如此
  • TAP5-373型–当JavaScript库移动到文档的“顶部”时,应将其添加到<head>,而不是<body>
  • TAP5-377型–项目现场与管道描述和JIRA的内部链接中断
  • TAP5-378型–缺少巴西葡萄牙语的i18n文件
  • TAP5-385型–Tapestry 5经常错误地呈现空元素
  • TAP5-391型–从表单页面链接到复选框页面(在网站上)不正确
  • TAP5-399型–在请求结束时,修改后的应用程序状态对象不会持久化回会话
  • TAP5-402型–不呈现任何内容的BeanDisplay属性会导致布局错误(它们应该呈现一个)
  • TAP5-403型–由于JVM差异,OneShotLock测试在JDK 1.6下失败
  • TAP5-405型–文档应参考索引而不是起始页
  • TAP5-407型–DocumentLinker不应使用不推荐的HTML注释块的做法
  • TAP5-408型–会话中持久存在的对象应在请求结束时自动重新存储到会话中
  • 抽头5-413–如果存在“脏”ASO,则使会话无效可能会在请求结束时导致异常
  • TAP5-416型–IE和Window Prototype的Javascript错误
  • TAP5-419型–组件类转换的日志具有输入错误前缀
  • TAP5-425型–尝试引用名称为单个字母的属性时,Tapestry失败,出现wierd异常
  • TAP5-428型–应该可以在外部创建spring ApplicationContext的环境中使用tapestry-spring(如tapestry 5.0中的情况)
  • TAP5-431型–当使用外部配置Spring ApplicationContext时,上下文的bean应注册为服务(如Tapestry 5.0中的情况)
  • TAP5-441型–Tapestry应该使用ServletContext.getMimeType()从文件扩展名映射到MIME类型
  • TAP5-443型–使用tapestry-upload时单击操作链接总是会引发异常
  • TAP5-444型–ToStringService未正确使用@Override注释
  • TAP5-449型–@CleanupRender渲染阶段方法不总是被调用
  • TAP5-454型–所有类路径资产应在URL中自动具有版本号(应用程序版本号)
  • TAP5-457型–XML命名空间的前缀非法
  • TAP5-464型–应将可调用接口移动到公共包中(它当前是内部的,尽管一些公共接口引用了它)
  • TAP5-467型–ResponseCompressionAnalyzerImpl应在将接受的编码与“gzip”进行比较之前修剪空格
  • TAP5-468型–ResponseCompressionAnalyzer在比较配置的排除mime类型时应忽略字符集
  • TAP5-470型–异常报告应仅拆分名称以“.path”结尾的系统属性
  • TAP5-471型–如果未找到元数据且没有符号提供值,MetaDataLocator将引发异常;这应该记录下来
  • TAP5-478型–如果使用Grid的add和include参数,则必须在includes中提及添加了add的新列
  • TAP5-484型–Quickstart应包括对EasyMock的测试范围依赖
  • 抽头5-488–为未知服务提供服务时错误消息输入错误
  • TAP5-489型–AssetBinding中关于不变量的注释已过时,因为所有资产现在都使用完整的URL
  • TAP5-490型–从Ajax指南页面到组件引用的链接中断
  • TAP5-505型–如果web应用程序路径是绝对路径,则JettyRunner无法在Windows计算机上启动
  • TAP5-507型–DOCTYPE和根元素之间的注释现在会导致呈现错误
  • TAP5-528型–应简化新的快速入门布局以删除“lorem ipson”文本

所做的改进

  • TAP5-24型–记录更改(持久)语言环境
  • TAP5-60型–提供基于方面的装饰服务替代方法
  • TAP5-79型–改进Tapestry的属性表达式语言,以包含OGNL-like功能
  • TAP5-100型–当呈现部分标记响应时,Tapestry应该用单引号引用属性(这样每个引号就不必在JSON中转义)
  • TAP5-165型–应将使用PrimaryKeyEncoder的组件更改为使用ValueEncoder,并且应弃用PrimaryKeyEncoder
  • TAP5-181型–突出显示重复的ID。
  • TAP5-194型–Submit组件的处理程序方法应接受上下文
  • TAP5-209型–quickstart原型应提供一个示例page.properties文件
  • TAP5-216型–Page接口的许多方法可以移动到PageResources(应该重命名为ComponentPageElementResources)
  • TAP5-346型–Maven资源过滤预先扩展了一些Tapestry扩展:文档应该对此发出警告
  • TAP5-364型–BeanEditForm应包含与Form相同的自动调焦参数
  • TAP5-365型–日语本地化支持
  • 水龙头5-371–服务贡献方法应能够包括Logger类型的参数(服务的记录器),以便为贡献提供使用服务进行日志记录的选项
  • TAP5-380型–添加对希腊语的本地化支持
  • TAP5-382型–PersistenceConstants应具有所有持久性字段策略
  • TAP5-383型–公开LinkCreationHub服务,以允许希望观察(和修改)新Link实例的侦听器
  • TAP5-386型–Tapestry IoC文档改进
  • TAP5-390型–通过提供指向tapestry类的javadoc的链接来改进组件报告
  • TAP5-392型–tapestry-hibernate应分为两部分:tapestry-hibernate-core和tapestri-hibernate,tapestry-hibernate-core可在tapestry web应用程序之外使用
  • TAP5-393型–Tapestry IOC应记录所有加载的模块类的名称,并清楚地指出无法加载的模块类别
  • TAP5-406型–从源树中删除IDEA和Eclipse控制文件
  • TAP5-417型–Tapestry性能改进
  • TAP5-422型–Tapestry应该将用户的语言环境编码到URL中,而不是作为HTTP cookie
  • TAP5-429型–当模块类的贡献方法与已知服务不匹配时,Tapestry应抛出异常
  • TAP5-435型–AjaxFormLoop不包含用于在添加新元素时指定动画的参数
  • TAP5-442型–添加上下文:绑定前缀,使从模板引用上下文资产变得非常容易
  • TAP5-445型–添加轻松关闭GZIP压缩的功能,用于静态资产和动态页面呈现
  • TAP5-447型–ExceptionDisplay应呈现无趣的堆栈帧,但应包含一个客户端控件来切换其可见性
  • TAP5-448型–资产不应再尝试生成相对URI
  • TAP5-451型–将Selenium依赖项升级到新的beta版(支持FireFox 3)
  • TAP5-458型–Tapestry快速入门应该包括一个基本但视觉上令人愉悦的布局组件
  • 抽头5-459–Quickstart应包括所提供的对servlet API的作用域依赖
  • TAP5-462型–常见问题解答:Hibernate启动问题现在有了一个非常简单的答案
  • TAP5-465型–添加一个LazyAdvisor服务,允许对服务的方法调用进行惰性评估
  • TAP5-479型–Quickstart原型应包括基本站点.xml和index.apt
  • TAP5-481型–快速启动原型应包括对tapestry-test的测试范围依赖
  • TAP5-482型–Maven存储库位置http://archiva.openqa.org/repository/releases在主pom.xml中有一个不需要的尾部斜杠
  • TAP5-487型–在包含组件中公开嵌入式组件参数的更简单方法
  • TAP5-496型–更改If和Abless以呈现其模板元素(如果提供)(即使用t:type时)以及非正式参数
  • TAP5-498型–将Javassist依赖项升级到最新版本3.9.0.GA
  • TAP5-499型–清理并简化PageTester以删除ComponentInvocation、InvocationTarget等。
  • TAP5-503型–在OSGi中使用Live Class和Template Reloading功能
  • TAP5-516型–呈现PageLink时,不必仅为了查看是否存在页面激活上下文而加载目标页面实例
  • TAP5-522型–通过共享绑定描述来减少内存占用
  • TAP5-523型–Submit组件应该能够呈现image类型的输入字段

新增功能

  • TAP5-66型–使用模板中的名称空间引用库中的组件
  • TAP5-70型–如果客户端支持,Tapestry应自动压缩发送给客户端的内容
  • TAP5-90型–应该对上下文资产进行版本控制,并提供一个远未来到期头,就像类路径资产一样
  • TAP5-95型–针对同一页面的重复构建优化页面构建
  • 抽头5-106–在ExceptionAnalyzer中筛选出堆栈帧时,sun.reflect的帧很容易被忽略
  • TAP5-112型–为块参数定义新名称空间p:
  • TAP5-139型–@Autobuild注释用于参数,隐式调用ObjectLocator.Autobuild()
  • TAP5-140型–用于处理现场重新装载的服务应公开
  • TAP5-215型–配置接口应支持除实例之外提供类(自动构建)
  • TAP5-291型–现在支持字段注入,我们需要为组件完全构造后要调用的方法添加注释
  • TAP5-295型–可以选择提前启动Hibernate,而不是在第一次请求时延迟启动
  • TAP5-316型–向tapestry-ioc添加服务覆盖功能,类似于tapestry核心的功能(Alias服务)
  • TAP5-427型–允许将Tapestry服务注入Springbean
  • TAP5-430型–服务注释,表示不应装饰服务
  • TAP5-434型–添加有关使用PersistentLocale服务实现区域设置更改的文档
  • TAP5-436型–Tapestry应验证模块类的所有公共方法对Tapestry(构建、装饰、贡献或绑定)是否有意义,其他方法应导致异常作为名称中可能的输入错误抛出
  • TAP5-437型–OrderedConfiguration和MappedConfiguration接口应允许override()方法(类似于add())
  • 抽头5-439–添加注释@ServiceId,该注释可以放置在构建器方法或服务类上,以标识要使用的服务id
  • TAP5-446型–Tapestry应该输出一个<meta>标记,以将Tapestry标识为生成器(对于不想宣传其技术的应用程序,可以选择关闭此功能)
  • TAP5-472型–使内容交付网络易于使用
  • TAP5-476型–为组件事件和页面呈现请求提供一个通用的处理程序/过滤器管道,以便更容易添加适用于这两种类型请求的过滤器
  • TAP5-491型–快速启动原型构建应将archetype-catalog.xml生成到Tapestry360的maven-repository或maven-snapshot-repository中,以便于使用mvn原型:generate-goal

已完成的任务

  • 水龙头5-372–将5.0.16-->5.0.17的更改合并到主干(5.1)
  • TAP5-379型–将Ars Machina项目添加到Tapestry 5相关包列表中
  • TAP5-381型–文档讨论了“tapestry.charset”,但没有记录此类配置
  • TAP5-480型–将Surefire Plugin和TestNG依赖项升级到最新版本(分别为2.4.3和5.8)
  • TAP5-493型–转换StructureStrings#original-child-component
  • TAP5-494型–将maven-site-plugin从2.0-beta-6降级为2.0-beta-5,因为我们更喜欢实际运行的站点