L’amico di Jerry?
Chiunque si sia trovato a confrontarsi con applicazioni web basate su architettura Java 2 Enterprise Editino avrà certamente avuto a che fare con Tomcat, quindi quello che state per leggere non sarà una novità, in ogni caso: no, non stiamo parlando del gatto Tom amico/nemico di Jerry, prodotto da William Hanna and Joseph Barbera nel 1940.
Tomcat è un Application Server conforme alle specifiche J2EE ed è Open Suorce.
Si tratta in effetti di una parte di Jakarta, progetto ambizioso creato e mantenuto dalla Apache Software Foundation con l’obiettivo di realizzare strumenti, librerie, tool, API e componenti server, il tutto basato su architettura Java.
Per essere precisi Tomcat è un Servlet Container ed un JSP Engine. Un motore quindi in grado di eseguire lato server applicazioni web basate su architetture J2EE e costituite da componenti Servlet e da pagine JSP.
L’evoluzione
Tomcat deve la sua fortuna alla qualità con la quale è stato concepito e realizzato, la prima versione “seria e stabile”, fu la 3.3.1 che era compatibile con le specifiche Servlet 2.2 e JSP 1.1.
Nuove specifiche e nuova versione di Tomcat, la 4.x, compatibile Servlet 2.3 e JSP 1.2.
La versione corrente, la 5.0.18, è compatibile con le Servlet 2.4 e con le JSP 2.0.
Come si può vedere la progressione è impressionante, soprattutto se si considera che l’implementazione delle specifiche è totale, a meno di bug che (qualcuno dice) esistono in ogni software che viene scritto.
Servlet 2.4
Come spesso accade (Windows 95 vi dice nulla?) quando si cerca di fare un salto di qualità, anche le specifiche Servlet 2.4 si scontrano con la necessità di fornire una compatibilità all’indietro con le specifiche più vecchie.
In ogni caso, anche se si tratta di una minor-release, il salto di qualità c’è stato comunque aggiungendo queste nuove caratteristiche:
- addio al SingleThreadModel, la gestione degli eventi è stata rivista;
- supporto di HTTP 1.1;
- i file di descrizione delle Servlet rispettano una grammatica che adesso si può anche scrivere in XML-Schema;
- miglioramento delle procedure di internazionalizzazione delle applicazioni.
JSP 2.0
Le specifiche JSP 2.0 hanno subito una evoluzione significativa, cosa che ha permesso il cambio di major-release passando dalla versione 1.2 direttamente alla 2.0.
Tra le novità più significative ricordiamo:
- nuova sintassi per le Custom Tag Libraries, anche se rimane il supporto alla vecchia sintassi;
- Java Server Faces: uno strumento per creare componenti di front-end indipendenti dalla tecnologia utilizzata
- incorporazione delle JSTL (Java Standard Tag Libraries)
- introduzione del un nuovo Expression Language
Conclusioni
La versione 5 di Tomcat, che può essere scaricata da questo indirizzo, è conforme con queste nuove specifiche e permette quindi la realizzazione e l’esecuzione di web application che le implementano.
Il tutto naturalmente secondo lo spirito del software Open Source.