RSS Feed
16
July
2004

About my new weblog engine

After some weeks of work once again I ported my little weblog system :-) This new version is now powered by the following technologies:

  • Tapestry for the presentation layer
  • Spring as the container
  • Hibernate for DAO
  • Lucene for fulltext search (currently deactivated)
All in all I am very happy with Tapestry. Though it has it quirks as well it is still a great framework to develop with. It clearly features a very object oriented way of web development. I really like WebWork for its simplicity and effectiveness too, but it is focused around the controller. Tapestry, however, gives you, the developer, the possibilty to develop true web components. A component consist not only of a Java class but of a HTML template as well (in fact it consits of three files: definition, Java class and an optional template). Thanks to its concept of a markup writer it is very easy to manipulate the HTML code from Java. Some components for example can make use of a renderer such as the form component. If the validation of a form fails the renderer of the form marks the wrong fields dynamically by modifying the HTML code on-the-fly. Very cool!

Well, as you might guess, I am a great fan of Tapestry :-)

Comments

1. Robert
Tapestry /is/ great. What quirks do you feel there are? Certainly there are some, but, on the whole, it's lightyears ahead of anything else I've looked at.

2. Robert
Tapestry /is/ great. What quirks do you feel there are? Certainly there are some, but, on the whole, it's lightyears ahead of anything else I've looked at.

3. Lars Hoss
"Quirks" was probably a little bit too hard. What I wanted to say is that Tapestry needs some learing and understanding to archive certain tasks. For example the implementation of this page required some deeper understanding of the live cycle. You have to know that pageBeginRender may be called twice: during the rewind process and afterwards for the real rendering of the page. Therefore you have to look, when to fetch objects from the database, escpecially if the fetch depends on hidden parameters of the form.

4. Ewaves
Hello my Blog http://blog.tomxp.com