Introduzione a JBoss AS5

Il nome utilizzato per definire un servere java EE è Application Server. Essendo Java Enterprise edition una specifica liberamente consultabile, chiunque è libero di realizzare un Application Server conforme a Java EE. L’esistenza di una specifica comune garantisce che ogni applicazione scritta secondo le linee guida sia perfettamente portabile da un Application Server all’altro senza dover essere modificata.
Java EE offre linee guida che si determinano la struttura delle applicazioni e la loro configurazione di base, ma non parla minimamente di aspetti importanti come la gestione dell’Application Server, il supporto per il Clustering e la sua performance. I prodotti commerciali si differenziano appunto su questi aspetti.

JBoss è al momento l’Application Server Open Source più popolare sul mercato. Come già detto JBoss implementa l’intera suite dei servizi Java EE, descritti precedentemente. Ai fini di questo progetto le parti maggiormente analizzate sono:
  • JPA e Hibernate: JBoss contiene al suo interno questo servizio di Object-relational mapping (ORM) che gestisce la rappresentazione e il mantenimento su database relazionale di un sistema di oggetti Java e quindi implementa le JPA(Java Persistance Api). Il database interno di JBoss è Hypersonic (HSQLDB) ma è possibile utilizzare qualsiasi altro database. RubricaWeb utilizza MySql e vedremo nella sezione apposita come configurare JBoss per l’utilizzo di questo datebase.
  • EJB Container: Gestisce gli EJB che contengono la logica di business delle varie applicazioni presenti sul server. Vedremo nel capitolo relativo come l’utilizzo di annotazioni nel codice permetta agli EJB di comunicare con l’Application Server.
  • JSP e servlet: le teconogie che permettono di implementare il Web Tier. La componente che gestisce servlet e JSP di un Application Server è il Web Container, e il Web Container utilizzato da JBoss è Apache Tomcat. Vedremo come RubricaWeb e le Web Application comunichino tramite file XML con il Web Container.
  • Web Service: JBoss offre un ampio supporto ai Web Service. Nell’applicazione RubricaWeb Web Tier e Business Tier comunicano tramite Web Service, vedremo come questo sia stato realizzato tramite AXIS, un progetto Open Source che permette di creare ed interrogare Web Service integrato in JBoss.
  • Clustering: L’aspetto cruciale del progetto RubricaWeb è il suo schieramento in un cluster di nodi JBoss. Uno dei punti di forza di questo Application Server è appunto il dettagliato supporto al Clustering. Nel capitolo dedicato a questo argomento vedremo come l’applicazione sia schierata in modo omogeneo su un cluster di nodi configurando il Web Server Apache con funzione di load balancing. JBoss implementa la funzione di HTTP Session Replication: se un nodo ha un problema, le sessioni HTTP vengono replicate su altri nodi in modo che il client dell’applicazione non subisca un interruzione del servizio.

Leave a Comment

Your email address will not be published.

*