Pubblicato il 24 Aprile 2013 da Giampiero Granatella

In questo post vediamo come sviluppare applicazioni su Portofino 4 utilizzando IntelliJ Idea.  Lo sviluppo tradizionale di un'applicazione Web in Idea richiede la creazione di un progetto web e il suo deploy su un application server quale Tomcat. Questa modalità è certamente possibile anche con Portofino, ma ha due svantaggi: primo il redeploy è lento e, secondo, con questo ciclo di vita si perde la possibilità di modificare gli script Groovy su sistemi live. 

L'idea che proponiamo in questo post è di creare un progetto che punti all'applicazione web in esecuzione sotto Tomcat. In questo modo possiamo sfruttare la potenza dell'IDE e mantenere la peculiarità di Portofino di effettuare modifiche sul sistema live senza rieffettuare deploy.

Perché usare un IDE? Portofino può essere utilizzato anche solo attraverso un browser e, eventualmente, un editor di testo. Ma l'utilizzo di un IDE, quale IntelliJ Idea, facilita la creazione e la modifica di pagine xml, jsp e degli script groovy. Con IntelliJ Idea possiamo, ad esempio, debuggare gli scrip Groovy, navigare e ricercare le classi, avere sintassi colorata, auto completamento, import automatici  e funzioni di refactoring.

Per la realizzazione di questo post ho utilizzato IntelliJ Idea 12 "Community Edition". 

Impostazione del progetto

All'interno di Idea, creiamo un nuovo progetto
 
 
 
PASSO 1. Selezioniamo Java Module, diamo un nome al progetto e usiamo come "Project location" il war espanso sotto Tomcat. Infine impostiamo una sdk e clicchiamo su "Next"
 
 
 
PASSO 2. Saltiamo la configurazione di groovy e concludiamo la creazione.
 
Impostiamo ora la struttura del progetto, definendo dove saranno i sorgenti (gli script Groovy) e le librerie del nostro progetto web.
Clicchiamo sul pulsante "Project Strucure".
 
 
Per i sorgenti clicchiamo su "Modules" e impostiamo la directory "apps/default/groovy" come directory dei sorgenti.
 
 
Sempre neile impostazioni dei progetti creiamo una nuova libreria "lib", nella quale carichiamo sia i jar nella directory WEB-INF/lib  della nostra web app sia i jar all'interno della directory lib di apache.
 
 
A questo punto il nostro progetto è pronto per essere modificato con IntelliJ Idea e già negli script Groovy possiamo usufruire della sintassi colorate, del controllo sintattico e delle importazioni automatiche.
 
 
 

Debug Remoto

Oltre a quanto fatto sino ad ora possiamo utilizzare Idea per fare il debug della nostra applicazione in esercizio. Per fare questo abbiamo bisogno di:

  1. configurare Tomcat perché venga avviato in modalità debug
  2. configurare Idea perché si agganci al server remoto

Per effettuare questi passi potete fare riferimento al sito http://wiki.apache.org/tomcat/FAQ/Developing.

Avviamo Tomcat in modalità debug impostando due variabili d'ambiente e avviando Tomcat come mostrato di seguito (esempio per Linux o Mac)

export JPDA_ADDRESS=5005

export JPDA_TRANSPORT=dt_socket

bin/catalina.sh jpda start
 
Ora configuriamo il server remoto su IntelliJ Idea clicchiamo su "Edit Configurations...".  
 
 
Definiamo un nuovo "Remote", diamogli un nome e verifichiamo l'host e la la porta (5005 è il valore della variabile JPDA_ADDRESS impostata precedentemente).
 
 
E questo è tutto. Mettiamo un break point sul file security.groovy, facciamo il login e vediamo il debugging di IntelliJ in esecuzione.
 

Conclusioni

In questo post abbiamo visto come configurare IntelliJ Idea per sviluppare applicazioni web in Portofino. L'utilizzo di un IDE porta una serie di vantaggi, primo fra tutti la possibilità di fare il debug dell'applicazioni.

 

 

comments powered by Disqus