Categorie

Archivio Articoli

Categorie

Commenti recenti

Eclipse + GWT plugin + RPC = WebApp!

eclipse-gwt

 

 

 

 

 

Scaricare Eclipse dal sito ufficiale (io ho usato la versione precompilata Eclipse Classic Juno).

Installarlo (nel caso della versione eseguibile spostarlo nella cartella di destinazione)

Avviare Eclipse, dal menu Help -> Install New Software

nella casella di ricerca della finestra che compare digitare la stringa relativa alla versione di Eclipse che utilizziamo, nel caso di Juno:

http://dl.google.com/eclipse/plugin/4.2

Per altre versioni di Eclipse fare riferimento a questa pagina.

Installare i componenti necessari: Google plugin for Eclipse e Google Web Toolkit SDK

A fine installazione eseguire il riavvio necessario e quindi creare un nuovo progetto GWT.

Seguire questa guida per installare RPC-PHP e generale l'applicazione web di test.

Adesso siamo pronti per creare le nostre WebApp!

 

 

[upd:21-03-2012] Thunderbird su Ubuntu: usare gli ultimi articoli di un blog WordPress come firma

thunderbird-logoPremessa: la guida si riferisce a Ubuntu Linux e Thunderbird 7, ma può essere adattata ad altre distro e versioni del programma.

Vediamo come si fa ad inserire un link ad uno degli ultimi articoli del proprio blog nella firma di Mozilla Thunderbird.

 

 

 

Per prima cosa creiamo un file di testo contenente la firma "base" che vogliamo utilizzare in Mozilla Thunderbird, nel mio caso è la seguente:

*/Willy/* - *Contatti*: http://snipurl.com/contatti
* *FAQ* di /it-alt.comp.software.mozilla/: http://www.FAQmozilla.org
* *Gratuiki* - Software Free: http://gratuiki.willygroup.org

Salviamo il file in una posizione a cui possiamo accedere tranquillamente, ad esempio la cartella Documenti della nostra home: /home/UTENTE/Documenti/firma_no_blog.txt 1

Facciamone altre due copie e rinominiamole così: firma.old.txt e firma.txt

Lanciamo Mozilla Thunderbird ed andiamo a configurare la firma in Mozilla Thunderbird facendola puntare al nostro file firma.txt

Adesso siamo pronti per scrivere lo script, io solitamente creo gli script in una cartella all'interno della home e poi creo un link simbolico in /usr/local/bin che punta al file dello script

Supponiamo di aver salvato il file che conterrà il nostro script nella posizione: /home/UTENTE/Documenti/Script/feed per prima cosa lo rendiamo eseguibile, da terminale:

$ chmod +x /home/UTENTE/Documenti/Script/feed

Quindi andiamo a creare il collegamento all'eseguibile:

$ sudo ln -fs /home/UTENTE/Documenti/Script/feed /usr/local/bin/feed

Ora apriamo il file feed con un editor di testo (gedit/medit vanno benissimo, altrimenti se volete operare da terminale potete usare vi, nano o quello che più vi piace), ed inseriamo il codice:

#!/usr/bin/env bash
# File temporaneo dove verrà salvato il feed
FILE="/tmp/blogfeed.txt";
# Indirizzo del Feed RSS da utilizzare
FEED="https://blog.willygroup.org/feed"
# Numero degli ultimi post che si vogliono linkare :: "Inserisci un post a caso tra gli ultimi 5"
NUM_POST=5

# FILE TEMPORANEI PER TITOLI E LINK
TMP_TITOLI="/tmp/titoli.txt"
TMP_LINK="/tmp/link.txt"
# Nome utente
UTENTE="willy"

#Crea copia backup della firma
cp "/home/$UTENTE/Documenti/firma.txt" "/home/$UTENTE/Documenti/firma.old.txt"

# Recupera il feed del blog
    wget -O $FILE $FEED

# Controlla se ci sono stati problemi durante il download e quindi se il file risulta vuoto
if [ ! -s $FILE ]
then
    # In caso di file vuoto ripristina l'ultima firma
    cp "/home/$UTENTE/Documenti/firma.old.txt" "/home/$UTENTE/Documenti/firma.txt"
else

    RIGA=`echo $RANDOM%$NUM_POST | bc`
    RIGA=`expr $RIGA + 1`
    xmlstarlet sel -t -m '//item' -v 'title' -n $FILE > $TMP_TITOLI
    xmlstarlet sel -t -m '//item' -v 'link' -n $FILE > $TMP_LINK

    rm /home/$UTENTE/Documenti/firma.txt
    cp /home/$UTENTE/Documenti/firma_no_blog.txt /home/$UTENTE/Documenti/firma.txt

    # Recupero Titolo e link
    TITOLO=$(head -n $RIGA $TMP_TITOLI | tail -n 1);
    LINK=$(head -n $RIGA $TMP_LINK | tail -n 1);
    # Utilizzo un servizio online per creare link corti: goo.gl
    SHORTLINK=$(curl -s -d '&url='$LINK http://goo.gl/api/url | sed -e 's/{"short_url":"//' -e 's/","added_to_history":false}/\n/');

    # Accodo titolo e link corto alla firma base
    echo "* $TITOLO: $SHORTLINK" >> /home/$UTENTE/Documenti/firma.txt;
fi

Il precedente codice è un po' rozzo, critiche e consigli sono ben accetti.
Per eseguire lo script basta lanciare da terminale:

$ feed

Se vogliamo che questo script venga lanciato ogni tot minuti, ad esempio 20, dobbiamo scomodare la funzione cron di Unix, da terminale:

$ crontab -e

e quindi inseriamo sotto a:

$ # m h dom mon dow command

la riga:

$ */20 * * * * /usr/local/bin/feed

Ed abbiamo finito!
 [Aggiornamento 21/03/2012]: È stata modificata l'api per goo.gl, nel riquadro sottostante metto in evidenza la modifica che è stata apportata anche al codice sopra:

# SHORTLINK=$(curl -s -d '&url='$LINK http://goo.gl/api/url \
# | sed -e 's/{"short_url":"//' -e 's/","added_to_history":false}/\n/');
SHORTLINK=$(curl https://www.googleapis.com/urlshortener/v1/url -H \
          'Content-Type: application/json' -d '{"longUrl": "'$LINK'"}' \
          | sed -n 's/.*\(http:\/\/goo.gl\/[A-Za-z0-9][A-Za-z0-9]*\).*/\1/p');

Note:

  1. sostituire a UTENTE il proprio username

Installare mahara su Ubuntu 10.10

maharaMahara è un'applicazione web di ePortfolio e social network che fornisce agli utenti gli strumenti per creare e gestire un portfolio digitale per l'apprendimento.

Le caratteristiche di social networking permettono agli utenti di interagire.

Mahara fornisce inoltre agli utenti blog, gestori di curriculum, file manager ed editor di view (le view sono strumenti che aiutano gli utenti a rendere fruibili i loro contenuti da parte di altri utenti).

  • Nella propria home (/home/user/) creare le cartelle:
mkdir /home/user(*)/public_html
mkdir /home/user(*)/maharadata

(*) dove user è il proprio username

  • Assegnare alla cartella maharadata il web server come proprietario:
sudo chown -R www-data:www-data /home/user/maharadata
  • Scaricare l'ultima versione di mahara dal sito ufficiale: www.mahara.org
  • Scompattare il file.
  • Copiare il contenuto della cartella mahara-[version]/htdocs nella posizione /home/user/public_html facendo attenzione a copiare anche i file nascosti, meglio ancora se si utilizza il comando mv (move) dall'interno della cartella mahara-[version]:
mv htdocs/ /home/user/public_html
  • Installare il server web Apache e il server SQL MySql5:
sudo apt-get install apache2 php5 mysql-server-5.1 phpmyadmin
  • Eventualmente installare le estensioni di PHP:
 sudo apt-get install php5-gd
sudo apt-get install php5-curl
  • Creare il database e l'utente per la sua gestione (su MySql):
mysql --user=root -p
[enter password]
create database nomeDelDatabase character set UTF8;
grant all on nomeDelDatabase.* to 'username'@'localhost' identified by 'password';
  • Creare il file di configurazione (dalla cartella public_html):
cp config-dist.php config.php
  • Modificare il file di configurazione:
gedit config.php
######
// database connection details
// valid values for dbtype are 'postgres8' and 'mysql5'
$cfg->dbtype   = 'mysql5';
$cfg->dbhost   = 'localhost';
$cfg->dbport   = null;
$cfg->dbname   = 'nomeDelDatabase';
$cfg->dbuser   = 'username';
$cfg->dbpass   = 'password';
...
$cfg->dataroot = '/home/user/maharadata';
####
  • Configurare un virtualHost su Apache:
sudo gedit /etc/apache2/sites-available/mahara.conf
<VirtualHost *:80>
  ServerName nomeServerCheVoglioUsare
  DocumentRoot  /home/user/public_html
  ErrorLog /var/log/apache2/mahara.error.log
  CustomLog /var/log/apache2/mahara.access.log combined
  <Directory /home/user/public_html >
     AllowOverride All
  </Directory>
</VirtualHost>
  • Creare un link simbolico nella cartella dei siti abilitati:
cd /etc/apache2/sites-enabled/
sudo ln -s /etc/apache2/sites-available/mahara.conf mahara conf
  • Abilitare il sito:
sudo a2ensite mahara.conf
  • Nel file di host inserire il server virtuale appena creato:
sudo gedit /etc/hosts
.
.
127.0.0.1   nomeServerCheVoglioUsare
.
.
  • Riavviare il server apache:
sudo /etc/init.d/apache2 restart
  • Con un browser visitare la pagina:
     http://nomeServerCheVoglioUsare/
  • Seguire i passi per completare l'installazione di mahara.

Fonte

Sito ufficiale di mahara