Iniziamo una serie di articoli dedicati a Ext GWT, più brevemente GXT, il framework sviluppato da Sencha, che consente di estendere le potenzialità della libreria del Google Web Toolkit.
In questo articolo ci preoccupiamo di configurare un progetto GXT usando Maven ed Eclipse come IDE. Per configurare Eclipse occorre scaricare la versione Juno (4.2) , installare il GWT plugin usando l’update site disponibile all’url http://dl.google.com/eclipse/plugin/4.2 e installare m2eclipse tramite l’update site disponibile all’url http://download.eclipse.org/technology/m2e/releases.
Configurato Eclipse realizziamo il nostro primo progetto avvalendoci di maven e dell’archetipo gwt-maven-plugin tramite la direttiva
|
mvn archetype:generate -DarchetypeGroupId=org.codehaus.mojo -DarchetypeArtifactId=gwt-maven-plugin -DarchetypeVersion=2.5.1 -DgroupId=it.finazzo -DartifactId=sencha -Dversion=1.0 |
Tramite questa direttiva maven crea un progetto che supporta l’alberatura di GWT. Durante l’esecuzione della direttiva specifichiamo il nome del modulo principale (nel mio caso Application), ovvero la classe che implementa l’entry point, il punto di accesso alla nostra applicazione.
A questo punto tramite la direttiva mvn gwt:eclipse possiamo generare i file necessari ad effettuare l’import in Eclipse.
Resta da aggiungere la dipendenza da GXT, agendo sul pom.xml e sul file xml associato al modulo entry point.
Aggiungiamo la versione di GXT da usare tramite il tag <gxt.version>3.0.1</gxt.version>
Specifichiamo il repository da cui scaricare i sorgenti di GXT
|
<repositories> <repository> <id>sencha-commercial-release</id> <name>Sencha commercial releases</name> <url>https://maven.sencha.com/repo/commercial-release/</url> </repository> </repositories> |
E infine aggiungiamo la dipendenza da GXT tramite il blocco
|
<dependency> <groupId>com.sencha.gxt</groupId> <artifactId>gxt</artifactId> <version>${gxt.version}</version> </dependency> |
Una volta aggiunta la dipendenza rendiamola attiva nel progetto eclipse tramite la direttiva mvn gwt:eclipse che si preoccuperà di scaricare le nuove librerie.
Resta da modificare il modulo Application.gwt.xml per rimuovere il tema di GWT e innestare l’eredità da GXT tramite il comando
|
<inherits name="com.sencha.gxt.ui.GXT" /> |
e linkare il file reset.css nella pagina Application.html tramite la direttiva
|
<link rel="stylesheet" type="text/css" href="/joomla/Application/reset.css"> |
Nel file Application.java sostituiamo il gwt-button con un oggetto sencha com.sencha.gxt.widget.core.client.button.TextButton e se abbiamo operato correttamente tramite la direttiva mvn gwt:run possiamo verificare che il progetto venga avviato correttamente.