PROGETTO DI STRUMENTI PER LA CONFIGURAZIONE DI APPLICAZIONI JAVA ENTERPRISE Anno Accademico 2006 / 2007 Sessione III FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI ELETTRONICA, INFORMATICA E SISTEMISTICA TESI DI LAUREA IN RETI DI CALCOLATORI L - A CANDIDATO ANDREA BONDI RELATORE CHIAR.MO PROF. ANTONIO CORRADI CORRELATORI ING. STEFANO MONTI ING. SAMUELE PASINI
Introduzione Evoluzione nellarchitettura del software Nascita di Internet Evoluzione del middleware Problematiche Distribuzione e Installazione Configurazione
Procedimento Scelte Tecnologiche Analisi dei Requisiti Progettazione Implementazione Esempio Concreto
Scelte Tecnologiche Java Enterprise Edition Java Management eXtension Cosa sono gli Mbeans Application Server Jboss Il linguaggio XML Luca Ruggiero Milano
Analisi dei Requisiti Ordine di Deploy dei componenti Upload dei componenti Configurazione tramite chiamate a Mbean Configurazione tramite metodi Custom Undeploy dei componenti
Progettazione Use Case: Upload, Deploy e Configurazione di unapplicazione Architettura Client / Server
Implementazione /1 Upload dei File Traduzione da File ad Array di Byte Informazioni di Deploy di un pacchetto LMbean jboss.system:service=MainDeployer public boolean fileUpload(byte[] bytes, String filename) deplo = new ObjectName("jboss.system:service=MainDeployer"); List deployed = (List ) server.invoke(deplo, "listDeployed", arg, sign);
Implementazione /2 Deploy tramite MBean Perché non sfruttare lHot Deployment di JBoss LMbean EjdMainMBean La Configurazione tramite Mbean La Configurazione tramite Metodi Custom Java Reflection API server.invoke(object, met.getName(), paramValue.toArray(),strType); CustomConfig cc = (CustomConfig) conf; Class cls = Class.forName(cc.getClassName()); Object object = cls.newInstance();
Esempio Concreto I Pacchetti che compongono lApplicazione di Esempio Web Application Configurazione Custom MBean di test Il file XML di configurazione Target deploy / undeploy Configurazioni MBean/Custom
Configurazioni MBean e Custom
Conclusioni Risultati raggiunti Limportanza della Java Management Extension Possibili sviluppi futuri Compatibilità con altri Application Server Base per implementazioni più avanzate