JBoss 7 ed EclipseLink 2: una coppia quasi perfetta – Parte I (a.k.a. weaving statico con Ant)

Gli Application Server (AS) basati sulle specifiche Java EE ci permettono spostare una applicazione da uno all’altro senza problemi, e allo stesso tempo ci mettono in condizione di essere in grado di lavorare indistintamente con uno o l’altro AS… questo almeno in teoria! In pratica invece ci scontriamo con tutte le configurazioni specifiche di ogni AS, nonché con deployment descriptors proprietari che variano da server a server. Di solito quindi, una volta scelto l’AS su cui lavorare, è bene affidarsi a tutte le implementazioni delle specifiche che esso porta con se, per avere meno problemi possibile. Prendiamo per esempio JBoss 7, che come implementazione di JPA ha Hibernate. Finché usiamo questa implementazione della specifica JPA, funziona tutto correttamente: se però abbiamo bisogno di passare per esempio ad EclipseLink, perché magari preferiamo qualche sua caratteristica peculiare, dobbiamo armarci di pazienza e rimboccarci le maniche!

JBoss 7 e Infinispan, una cache per tutti i gusti

Con la nuova versione dell’Application Server firmato JBoss, ovvero JBoss AS 7, tra le mille modifiche e le mille cose cambiate, troviamo anche JBoss Cache. La nuova gestione della cache, a differenza della precedente, è confluita sotto l’ala di Infinispan, ovvero una piattaforma di caching distribuita e scalabile, pensata appositamente per data grid. Per noi comuni mortali che significa?

JBoss 7.0.2 e SOAP: come abilitare il modulo Web Services

Già in un’altra occasione abbiamo avuto modo di parlare delle novità introdotte dall’architettura modulare di JBoss AS 7 e dal comportamento del ClassLoader: a fronte mi maggior sicurezza e isolamento dei componenti, nel migrare una applicazione dalla versione 6 alla 7.0.2 di JBoss possiamo incorrere in problemi inattesi. E’ il caso, per esempio, di applicazioni che espongono Servizi Web SOAP: a differenza di servizi REST, quelli SOAP hanno bisogno che venga abilitato il modulo opportuno affinché funzionino, probabilmente perché ancora il solo profilo Web del server è compliant Java EE 6. Vediamo come fare.

Primi passi con JBoss 7: nuovi progetti alle prese con il ClassLoader

JBoss 7 è uscito ormai da diverso tempo: vale la pena cominciare ad avvicinarsi e ammirare se le promesse degli sviluppatori sono state mantenute! Già da subito si rimane sbalorditi dalla velocità con cui si avvia: tutto tempo e soprattutto stress risparmiato! Tra le diverse novità, emerge anche la nuova gestione del ClassLoader che passa dalla classica versione gerarchica a quella per moduli. A fronte di maggior sicurezza e isolamento, siamo costretti a stare più attenti a come “confezioniamo” l’EAR delle nostre applicazioni: pena una bella serie di ClassNotFoundException! Ma andiamo per gradi e cominciamo dall’inizio.

JBoss e Web Services REST? Ci pensa RESTEasy!

Per scrivere Servizi Web RESTful in Java esistono già diversi strumenti che permettono di facilitare la realizzazione sia della parte producer che di quella consumer, come Jersey, RESTEasy o Restlet. Tutti implementano la specifica JAX-RS, che estendono con API che facilitano la realizzazione della parte client per esempio, non coperte da specifica. Inoltre, il primo è integrato nativamente da Glassfish 3, mentre il secondo da JBoss 6, anche se possono essere tranquillamente usati in qualsiasi Servlet Container, come Tomcat.