Friday, September 15, 2006

Honeycomb now comes with a Maven2 archetype for Tapestry/Hibernate based web-apps.

Version 0.3.3 of Honeycomb is released.
Honeycomb provides an easy integration for Tapestry and Hibernate. Its distinguishing key feature is session-per-conversation support.
The main changes in this release are:

  • re-structuring into 4 libraries replaced the templates for the Core/Webapp projects with maven archetypes. Maven users get started without manual downloads.
  • Fixed rollback on RedirectException.
  • Fixed possible concurrency issue in cross-request service-model
  • Fixed: Removed dangerous loophole allowing a conversation to survive a rollback triggered by an exception.
  • Cleaned up HiveMind descriptors and moved them into the lib-modules.
  • added a Watch component to the tap-lib (calls a listener when a property has changed in a submit)

Saturday, August 26, 2006

The Return of the Database - who needs more "middleware"?

Maybe it's just my organization's policy of giving its developers relatively free access to db's while, at the same time, putting lots of administrative hurdles and hurdle-like administrators between them and the app-server. But it's really amazing how little there is that you can't get done nicely with a sturdy db and a decent servlet-container (at most).
Example: For some time I thought a nice event-driven architecture I was planning would require some serious investment (of money and effort) into some sort of enterprisy message-bus, and, of course, then you'd have at least 2 transactional resources to keep synchronised, crying for some "serious" app-server... When I suddenly asked myself, why the hell one ta-resource, the database wasn't enough. And it is, I think. For small-scale integration tasks, where we can control the deployment of all involved systems, business components shared across applications and working on the same database will do just fine. For more difficult tasks requiring some more decoupling there's stuff like Oracle Advanced Queuing - which can be used as a JMS implementation backed, ultimately, by db-tables. Similar things should be easy to implement on any db.
And the best thing: only one ta-resource, only jdbc, no need for two-phase-commit, old Tomcat will do.

Monday, February 27, 2006

KickStart is now Honeycomb, release 0.3 out

Kickstart has moved from SourceForge to JavaForge, and it's changed its name to Honeycomb (alluding to the central role that HiveMind plays in it). Honeycomb integrates Tapestry with Hibernate for painless full-stack web-dev-support.
New features comprise

  • A hibernate DataSqueezer

  • Pluggable Audit-Trail via hibernate interceptor

  • Support for session per request pattern via simple config switch.

Sunday, January 15, 2006

With Kickstart 0.2 Tapestry supports the hibernate session-per-conversation pattern out of the box

I've uploaded a new release of KickStart. Improvements are:

  • Full support for the hibernate-session-per-conversation pattern. See hibernate.org for more.

  • fixed wrong unsaved-value-mapping

Saturday, January 07, 2006

KickStart integrates Tapestry with Hibernate for painless full-stack web-dev-support

While Web-Development with Java is supported by a variety of great frameworks it is still not easy (even tedious) to, firstly, choose the right ones for a given problem and, secondly, make them work together. (needless to refer to all the envious appraisals of RoR and, yes, even Visual-Studio by Java-developers).

I've set up a Sourceforge project, called KickStart, (first download available right now!). It's goal is to get newbies started with the most cutting edge JEE-stuff immediately, and even more important, to provide a platform to discuss the non-trivial task of glueing together the most powerful of the existing Java-frameworks into something that "just works". I believe that all the interesting problems (and solution-patterns) of framework integration patterns recurring in mailing lists and wikis deserve being collected and made available in the form of preconfigured templates for whole applications.

Kickstart strives to provide a selection of integration-patterns with well defined domains of application. Each pattern comes with a complete template application getting you kickstarted with your application in minutes.

For the time being, Kickstart is based on Tapestry, Hivemind and Hibernate. Also, Kickstart is in an early state. While it works, there's only one application pattern and template supported right now. But nevertheless, please try it and tell me whether it works for you.