Tapestry
文章平均质量分 77
deadswan000
这个作者很懒,什么都没留下…
展开
-
Tapestry与Spring的整合(在Tapestry页面中获得Spring Bean)
How can you reference Spring beans from Tapestry 4? In earlier versions of Tapestry, the most common method was to extend the BaseEngine class. However, in Tapestry 4 the原创 2008-01-28 20:51:00 · 1112 阅读 · 0 评论 -
管理自定义开发的组件
开发好控件的管理: 对于自己开发的控件,我们要把它管理起来,以便在以后的开发流程中使用, 我的在这里谈谈如何管理自己开发的控件的问题。具体的方法就是把它归档到一个library 里去。 比如我开发了一些控件,我就把它归档到一个叫Common.library的xml文档里去。 Common.library "-//Apache Software Foundation//Tap原创 2008-03-29 15:20:00 · 610 阅读 · 0 评论 -
ApplicationInitializer
如果想在web应用启动时做一些初始化的工作,就象在Servlet的init方法中的一样,同时又想把初始化的数据存储于Global中供访问.就需要配置一个ApplicationInitializer.步骤如下:1.新建一个类实现org.apache.tapestry.services.ApplicationInitializer接口.public final class ApplicationIni原创 2008-03-29 14:44:00 · 608 阅读 · 0 评论 -
积累
1-在tomcat启动时加入系统参数: -Dorg.apache.tapestry.disable-caching=true -Dorg.apache.tapestry.enable-reset-service=true 如果在eclipse WTP中启动tomcat,就加在服务运行的VM arguments中。2- Tom原创 2008-03-29 14:39:00 · 512 阅读 · 0 评论 -
Tapestry4的注入(Inject)功能在页面类里的替代实现
Tapestry4.0中引人注目的一个功能是注入功能,实现了配置和代码双重注入各种对象的功能。1.配置文件中使用inject,值得注意的是即使没有使用JDK1.5,inject也同样能够工作;2.代码中要使用JDK1.5支持的元数据标注(annotation)。个人不太喜欢注入功能。并不是因为本人因循守旧,拒绝革新,而是感觉确实没有太多必要使用它们。首先,page文件中使用它,增加配置上的复杂原创 2008-03-29 14:06:00 · 976 阅读 · 0 评论 -
将Tapestry框架打包的实现
1- 首先在Tapestry框架会在类路径下,导入的jar包里,搜索META-INF目录,(在应用启动的时候, Hivemind会在类路径下寻找 /META-INF/hivemodule.xml 类路径包括1-${webapp-context}/WEB-INF/classes, 2-${webapp-context}/WEB-INF/lib 中所有的jar包。3-或者原创 2008-03-29 13:51:00 · 666 阅读 · 0 评论 -
Tapestry 整合 Acegi
If youve read a couple of my last (unanswered) posts, youll see that I was flailing on getting Acegi and Tapestry to play nicely together-- mostly due to the fact that (a) Im a noob and (b) Tapes转载 2008-03-29 10:58:00 · 774 阅读 · 0 评论 -
用tapestry4.0.x生成验证码
package org.itrun.cnbrn.view.pageclass.system; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage;转载 2008-03-29 09:57:00 · 498 阅读 · 0 评论 -
SoftReference的介绍以及在Tapestry4中页面池的应用
软引用(Soft Reference)的主要特点是具有较强的引用功能。只有当内存不够的时候才回收这类内存,因此在内存足够的时候,他们通常不被回收。另外,这些引用 对象还能保证在Java 抛出OutOfMemory异常之前,被设置为null。他可以用于实现一些常用资源的缓存,实现Cache的功能,保证最大限度的使用内存而不引起 OutOfMemory异常。下面是软引用的实现代码: 1/**原创 2008-03-19 23:44:00 · 886 阅读 · 0 评论 -
Tapestry4常用的注入对象
注入方式: @InjectObject("service:tapestry.globals.HttpServletResponse") public abstract HttpServletResponse getServletResponse(); service一览: tapestry.globals.HttpServletRequest tapestry.globals.HttpServl转载 2008-03-19 23:25:00 · 451 阅读 · 0 评论 -
[4.1.x]Tapestry4.1.x中内置的ajax(不用写任何的javascript)
Tapestry4.1.x中内置dojo实现ajax功能,不用写任何的javascript就可以实现, 具体步骤如下。 1、用Shell组件包含进dojo,Shell组件会自动配置dojo包。 Basic javascript inclusion sample.2、使用updateComponents参数这个参数已经在很多组件里实现,加上这个参数就可以实现ajax了,例如组件Direc原创 2008-03-19 23:19:00 · 665 阅读 · 0 评论 -
Tapestry 4 实现自定义组件-CheckboxList
[本文中的程序在JDK 6, Tapestry 4.1中测试通过] 用Tapestry自定义组件和创建一个page一样简单,同样要创建三个文件,html模板,配置文件,java类文件,只不过配置文件后缀不是page了,而是jwc。 定义组件的html模板 组件html模板和page的模板基本差不多,只不过组件模板可以是html的片段,也可以是完整的html文件。我们要实现的CheckboxL转载 2008-03-14 20:30:00 · 1274 阅读 · 0 评论 -
自定义Tapestry标注
我们可以利用Tapestry的易扩展特性来扩展它,首先想到的就是注释方式来注入,例如我想实现如下注入 @InjectPageLink(“Home“) //自定义 Public abstract ILink getHomeLink(); @InjectExternalLink(“Category“) //自定义 Public abstr原创 2008-02-29 17:25:00 · 647 阅读 · 0 评论 -
积累
1-如果报错行是在.page文件的2-public ILink listenerMethod(Parameter parameter); 如果监听方法的返回值为ILink,如果T4侦测到是ILink,返回值的话,将自动redirect到ILink指定的页面。而且ILink可以为纯页面的Link也可以是带有参数的Link。纯页面Link也就是page service生成的link,带参数的link为原创 2008-02-15 16:50:00 · 795 阅读 · 1 评论 -
页面跳转类组件:ActionLink, DirectLink, ExternalLink, GenericLink, ServiceLink
1-ActionLink组件 暂时理解为,不转向下一页面,只是激活一个监听方法。页面响应时,创建了一个链接。如果触发了链接时,组件ActionLink得到一个监听器(通过调用方法actionTriggered())。2-DirectLink组件--------------------------------------------------------------------原创 2008-02-15 18:01:00 · 2543 阅读 · 0 评论 -
NameSpace研究
1- 可以在同一个应用里发布不同的子项目。2- 首先需要在web.xml里声明两个不同名称的Servlet,然后分别映射到不同的URL。3- 然后将两个子项目的html,page文件放到各自的 WEB-INF/servlet-name/目录下,而page类文件在相同src目录里的不同包里就可以了,会在各自的.application文件中指向各自的类包。(每个T原创 2008-01-27 15:02:00 · 420 阅读 · 0 评论 -
Tapestry属性生命周期(关于persist)
Tapestry属性可能拥有持久化状态,在各个请求周期之间保存用户指定的Tapestry属性。当应用程序的某一部分请求一个页面时候,将会获得一个 页面实例和用户先前存入持久化页面属性中的值。(当页面的属性比如抽象的getter setter没有被标明持久化的时候,请求只会拿到一个空的页面对象)如果这个页面中调用的组件包含有持久化的组件属性,那么请求也将获得持久化组件属性的值。 页面实例不是ses原创 2008-04-05 13:02:00 · 2471 阅读 · 1 评论