Tapestry 5.0.1 in Preview Release

Tapestry 5.0.1

http://tapestry.apache.org/tapestry5/

http://www.theserverside.com/news/thread.tss?thread_id=44119

Some key highlights:

  • Hivemind is gone. Tapestry 5 comes with a brand new custom build container. (cautious optimism)
  • Components classes are no longer abstract. Components are pure, simple POJOs.( rejoice)
  • Tapestry no longer uses XML page and component specification files. (uneasy feeling)
  • Changes to Tapestry component templates and classes are now picked up immediately, without any kind of restart. This will even work properly in production, not just during development. (double rejoice)
  • The new framework is supposed to be much faster but not backwards compatible to version 4. (wait and see)

It would be a welcomed relief to have changes in the annotated bindings picked up immediately without having to restart server! Any significant page development will require at least several restarts a day.

I’m not so sure about waving goodbye to the XML specification files even though annotation appears to be the “wave” (sorry about pun) of the future and all:

  • I find the XML files much more expressive of the page configuration than a bunch of annotations
  • a lot of configuration clutter is added to the page component class when it should just contain page behaviour logic
  • complex component annotation ends up looking like this in the page component. Not pleasing is it?
@Component(type="contrib:Table",
	bindings={"source=model", "columns=literal: companyName:companyName,
	city:city, country.name:country.name, enabled:enabled, !actions:actions",
	"id=literal:company.table", "name=literal:company.table", "pageSize=25",
	"initialSortColumn=ognl:defaultSortColumn", "initialSortOrder=literal:true"})

It's only fair to share...
Share on FacebookGoogle+Tweet about this on TwitterShare on LinkedIn

Leave a Reply