[Tapestry4] Tapestry4.1支持默认的注入?
tapestry
2006-11-30
查看最新的Tapestry4.1分支的代码,它提供的例子中
public abstract class LocaleList extends BasePage { public abstract Locale getCurrLocale(); public abstract void setSelected(Locale locale); public abstract void setStatus(String status); public abstract ResponseBuilder getBuilder(); public Locale[] getLocales() { return Locale.getAvailableLocales(); } public void selectLocale(BrowserEvent event, String language, String country, String variant) { setSelected(new Locale(language, country, variant)); setStatus(event.toString()); getBuilder().updateComponent("status"); } } public abstract ResponseBuilder getBuilder(); 这个方法没有通过注释注入,难道Tapestry4.1已经可以根据类型来自动注入,这个是Tapestry5中的概念,如果真的话,确实方便不少。 |
|
zhaow8820
2006-12-09
提到Tapestry4.1就谈些有建设性的话题吧。就是这次版本升级的改变。加入了对dojo的支持。对dojo的集成也算是赶一赶流行吧。起码能有些另人觉得人性化的ajax体验。不过tapestry4.1官方网及wiki的资源代码并不多。也就是没有太多应用新功能的例子。如、怎么应用自我触发事件的监听。怎么用新的引擎服务处理异步请求。他用html.js作为tapestry调用dojo的桥梁。确没有很详细的说明。有时间大家一起切磋。
|
|
tapestry
2006-12-15
已经确认了,如果在hivemind中一个接口只有一个类实现的话,只需要定义一个抽象的get方法,tapestry自动根据类型注入。
Any/all hivemind services that don't have more than one definition for the same class interface will be automatically wired into your components/pages just by declaring the abstract getter or setter |
|
tapestry
2006-12-15
4.0.x中可以使用tapestry-autowire来获得同样的功能。http://svn.javaforge.com/svn/tapestry/tapestry-autowire
|
|
Linuxboy
2006-12-22
是的,我已经试过了,注入的时候不用@InjectObject("xxxx")了,直接public abstract getXxxx()就行了。
|