JackWicket improvements

ImprovementsI changed a lot on the core of jackwicket.
Pricincipally I moved from the jcr-spring-modules to the new org.springframework.se-jcr.

I also removed the DAO infrastucre and I simplified the implemetation of the service layer. To rebuild the Service Layer I used basically the JcrMappingTemplate, but in order to have a Generic interface I extended this class with JcrMappingTemplateGeneric that offers a type safe implementation of the super class.

You can find some samples in the implementation of the  service layer in JackWicket.

Project website
Demo
Continuous integration (not available)
Code Quality(not available)

P.S.
Thanks Salvo for the technical advice :)

JackWicket

I published a website and a demo with my last personal work that I called Jackwicket.
In this project I put together Apache Wicket and Apache Jackrabbit OCM.
My target was create easyly and quickly powerful interactive webapps, and I think that Wicket and Jackrabbit  are very good technologies to achieve this target.

You can find more info below:

Demo

Project website

I will be very happy to know your opinion and to receive suggestions or contributions.

Cocoon 2.2 – prime impressioni

Bene, alla fine mi sono deciso a mettere le mani sulla nuova versione di Cocoon. Ho lavorato sulla RC2, ed è parsa decisamente stabile. Inizialmente ho giocato un po’ seguendo i tutorials sul nuovo sito, e visto il successo delle prime applicazioni giocattolo, tirate su in due balletti, mi sono buttato a fare l’aggiornamento di una applicazione esistente basata sulla 2.1.10.

Risultati ottimi. E’ filato quasi tutto liscio.

Mi piace molto la gestione del progetto con maven in particolare:

  • grazie agli archetype specifici per Cocoon, semplicità e velocità nella costruzione di un nuovo progetto (ci voleva proprio :) , vedi i tutorial)
  • comoda gestione delle librerie, maven permette di definirle in modo centralizzato e gestise dipende e download in automatico
  • comodità e rapidità nello sviluppo con il Cocoon Maven Plugin, si può sviluppare a runtime senza ricaricare tutto il contesto ad ogni build, il plugin si occupa di ricaricare solo le classi modificate.

Mi ha colpito molto la struttura di partenza di un nuovo progetto creata dagli archetype, praticamente non c’è niente da fare, la configurazione iniziale è minima.

  • files in /META-INF/cocoon/spring/*.xml configurano tramite Spring tutta la nostra applicazione, inizialmente troviamo solo servlet-service.xml e demoservlet-service.xml che configura un bean di demo
  • il file servlet-service.xml inizialmente contiene solo context e mount-point dell’applicazione. Da qui si attivano e configurano i block.

Sitemap e tutto il resto sono nella directory COB-INF, in src i sorgenti java.

La prima impressione è che sia stato fatto un gran bello sforzo per rendere semplice, pulita e ben mantenibile la struttura del progetto. Maven è stato introdotto con molto raziocionio.

Grazie alla comunità di Cocoon

…in attesa del rilascio definitivo della versione 2.2, sembra per la fine di Gennaio 2008