progetto di strumenti per la configurazione di applicazioni java enterprise anno accademico 2006 /...
TRANSCRIPT
PROGETTO DI STRUMENTI PER LA CONFIGURAZIONE DI APPLICAZIONI JAVA ENTERPRISE
Anno Accademico 2006 / 2007Sessione III
FACOLTÀ DI INGEGNERIACORSO DI LAUREA IN INGEGNERIA INFORMATICADIPARTIMENTO DI ELETTRONICA, INFORMATICA E
SISTEMISTICATESI DI LAUREA IN RETI DI CALCOLATORI L - A
CANDIDATOANDREA BONDI
RELATORECHIAR.MO PROF. ANTONIO CORRADI
CORRELATORIING. STEFANO MONTIING. SAMUELE PASINI
Introduzione
Evoluzione nell’architettura 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
<?xml version="1.0" encoding="ISO-8859-1"?>
<utenti> <utente> <nome>Luca</nome> <cognome>Ruggiero</cognome> <indirizzo>Milano</indirizzo> </utente></utenti>
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 eConfigurazione diun’applicazione
Architettura Client / Server
Implementazione /1
Upload dei File Traduzione da File ad Array di Byte
Informazioni di Deploy di un pacchetto L’Mbean
jboss.system:service=MainDeployer
public boolean fileUpload(byte[] bytes, String filename)
Implementazione /2
Deploy tramite MBean Perché non sfruttare l’Hot Deployment di
JBoss L’Mbean 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 l’Applicazione di Esempio Web Application Configurazione Custom MBean di test
Il file XML di configurazione Target deploy / undeploy Configurazioni MBean/Custom
Configurazioni MBean e Custom
<!-- Configurazione Custom -->
<custom class="testejd.Prova" priority="2">
<method name="scrivi" priority="2">
<param type="java.lang.String" value="scrivi da custom" />
</method>
<method name="parla" priority="1">
<param type="java.lang.String" value="parla da custom"/>
</method>
</custom>
<!-- Configurazione MBean -->
<mbean objectName="test:service=test" priority="1">
<method name="echo" priority="1">
<param type="java.lang.String" value="scrivi da MBean" />
</method>
</mbean>
Conclusioni
Risultati raggiunti
L’importanza della Java Management Extension
Possibili sviluppi futuri Compatibilità con altri Application Server Base per implementazioni più avanzate