Java ed RMI

maggio 8, 2007

Questa non è una piccola guida, piuttosto è un consiglio.

Se dovete sviluppare un’applicazione Java con la tecnologia RMI ed utilizzate Eclipse, allora vi consiglio di scaricare l’RMI Plug-in.
Si tratta di un plug-in utilissimo che vi permette di far partire semplicemente l’RMIRegistry e vi evita le inevitabili grane con le security.policy.

Non mi dilungo oltre, il sito fornisce ottime dimostrazioni sull’utilizzo, demo e tutorials.

[La Vida Es Un Carnaval]

Digg! | | | del.icio.us | ste-site – visit my website


Ant+Joram

marzo 28, 2007

Ho deciso di aprire la rassegna di soluzioni informatiche con due strumenti che hanno accompagnato le mie ultime giornate programmative. Ho scelto di farlo perchè on-line si trova poca documentazione su questi strumenti (soprattutto in italiano).
Si tratta di Ant, un tool che permette la configurazione, il build ed il deployment di progetti Java Complessi e Joram, un’interfaccia rete-applicazioni JMS/SOAP orientata alla messaggistica.

Il primo è di semplice installazione e configurazione. Dopo aver scaricato il tool e scompattato si devono impostare:

  • la ANT_HOME: per far questo spostatevi nel Pannello di Controllo, cliccate su Sistema e nel pannello Avanzate cliccate su Variabili d’ambiente. Qui create una nuova variabile d’ambiente con nome ANT_HOME e valore il percorso in cui avete installato Ant.
  • il path: nella stessa finestra si seleziona il path e lo si modifica inserendo il percorso della directory bin di Ant.

Le prime problematiche le ho riscontrate al momento dell’installazione di Joram che risulta leggermente diversa in ambiente Linux o Windows. Io sviluppo in ambiente Windows, ho scaricato dal sito l’ultima versione del server. Ho scompattato (due volte) e salvato in C:\joram-4.*.

A questo punto le operazioni dovrete configurare la JORAM_HOME: per far questo spostatevi nel Pannello di Controllo, cliccate su Sistema e nel pannello Avanzate cliccate su Variabili d’ambiente. Qui create una nuova variabile d’ambiente con nome JORAM_HOME e valore il percorso in cui avete installato joram. Nel nostro caso C:\joram-4.*.
Successivamente per cominciare ad utilizzare gli esempi presenti in sample, da linea di comando dovrete spostarvi nella directory sample\src\joram e digitare

ANT COMPILE

per compilare i sorgenti

ANT RESET SINGLE SERVER

per avviare il server Joram.
Poi da una seconda shell digitate:

ANT e il nome dell’applicazione da avviare

Per conoscere il nome delle applicazioni presenti (non corrisponde al nome delle classi) dovete andare a leggere il file Build.xml che riporta il nome di ogni applicazione. Allo stesso modo, nel momento in cui vorrete creare una nuova applicazione che utilizza Joram dovrete semplicemente copiare il Package nella cartella sample\src rilanciare ANT COMPILE, riavviare il server (ANT RESET SINGLE_SERVER), modificare il file build.xml e lanciare l’applicazione digitando ANT e il nome. La modifica è semplice: per ogni applicazione da avviare dovrete inserire qualcosa di simile a questo:

<target name=”NOME PER LANCIARE L’APPLICAZIONE” depends=”init”
description=”–> Runs chat administration”>
<java classname=”PACKAGE.CLASSE CON IL MAIN”
failonerror=”no” fork=”yes”
dir=”${run.dir}”>
<classpath path=”${project.class.path}”/>
</java>
</target>

Per applicazioni più complesse vi rimando alla documentazione sul sito.

Spero di essere stato d’aiuto a qualcuno, sono alle prime armi con spiegazioni di questo tipo, spero di migliorare in futuro!

[La Vida Es Un Carnaval]

Digg! | | | del.icio.us | ste-site – visit my website


RFID e tesi

gennaio 23, 2007

RFIDMi sono stati chiesti consigli e suggerimenti per lo sviluppo di applicazioni RFID in un commento. Visto che non ho mai approfondito l’argomento provo a dire qualcosa in più con questo post.

Prima cosa, ogni produttore di lettori/tag fornisce le proprie librerie per sviluppare applicazioni. Quindi la soluzione migliore per sviluppare qualcosa è cercare un rivenditore, acquistare un kit di sviluppo e cominciare a smanettare. I kit più semplici non dovrebbero avere prezzi elevatissimi ma mai al di sotto di qualche centinaia di euro. Io per la mia tesi non ho avuto problemi, pagava il Poli, ma se dovete sviluppare un’applicazione piccola piccola per voi allora le cose potrebbero cambiare.

Capitolo Java. Non ho trovato librerie Java, sul sito della Sun ho trovato questo, ma per i miei scopi mi sembrava troppo, quindi non ho approfondito la questione.

Io cosa ho acquistato. Mi sono affidato a, credo, l’unico rivenditore italiano di questi “aggeggini”, Softwork, e ho acquistato un kit con RFID reader-USB e alcuni tag passivi. L’installazione, l’utilizzo e la configurazione con il loro software è stata semplice, i problemi li ho trovati nel momento in cui dovevo sviluppare una mia applicazione (per due motivi: io non avevo mai sviluppato in ambiente Visual Studio e l’unico esempio disponibile era in VB6). Però una volta capito come funzionava in VB6 è stato semplice creare una piccola applicazione in C#. Come avrete capito vengono forniti delle dll (anzi per la precisione degli ocx) il cui utilizzo poi è abbastanza intuitivo (anche per chi non conosce VB o C#).

Ora la mia tesi può proseguire, magari in un altro post ne parlerò, vi dico solo che si tratterà di un software per l’e-learning innovativo destinato a musei, mostre…per aiutare i bambini nell’apprendimento.

Non mi sembra di avere altro da aggiungere, spero di aver aiutato chi mi aveva chiesto consigli e di poter essere d’aiuto ad altri.

[La Vida Es Un Carnaval]

Digg! | | | del.icio.us | ste-site – visit my website


generatore di icone per il social sharing

dicembre 13, 2006

Come avevo annunciato, la creazione di una piccola applicazione che generasse il codice necessario per inserire le icone del social sharing (DEL.ICIO.US, Digg…) era quasi terminata. Oggi con questo post ho deciso di renderla disponibile.
La potete scaricare liberamente, il funzionamento è semplice, inserendo il titolo del post e cliccando su “crea” si genererà il codice da inserire. Se decidete di posticipare il post rispetto al momento in cui state generando il codice ricordate di cambiare la data.

Spero di riuscire a fare delle modifiche grafiche. Sicuramente troverete degli errori, se è così fatemelo sapere. Spero di riuscire a trovare anche il tempo per scrivere un piccolo tutorial (anche se l’applicazione è molto semplice). L’ultima cosa, lo trovate qui, e tra qualche giorno potrete scaricarlo anche dal mio sito.

Ho deciso di rilasciare questo prodotto sotto la “Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo 2.5 Italia License”.
Creative Commons License
Questo/a opera è pubblicato sotto una Licenza Creative Commons.

Vorrei segnalare inoltre un’iniziativa “simile” alla mia segnalata da Sapientone. Si tratta di un progetto di alexking che è volto alla creazione di un’icona universale per riunire tutti i servizi del social sharing.
social sharing

Dimenticavo, ciò che scaricate è un jar, se avete la JVM cliccando 2 volte su di esso dovreste far partire l’applicazione mentre estraendo con ad es. winRar potrete recuperare i sorgenti. Come ultimo passo penso che cercherò di realizzare un file .exe da questo jar ma non avendolo mai fatto devo cercare quale strumento sia migliore per farlo e se sia conveniente. Se qualcuno ha un modo da suggerirmi lo ringrazio anticipatamente.

[La Vida Es Un Carnaval]

Digg! | | | del.icio.us | ste-site – visit my website


feedReader java

dicembre 2, 2006

Dopo circa una settimana ho cominciato a buttare giù qualche idea per il lettore di feed in Java.
Per prima cosa, il mio intento è quello di arrivare a creare una piccola applicazione che risolva una delle lacune presenti nei feedReader in circolazione. Questi infatti presentano gli articoli in ordine cronologico senza indicare correlazioni tra le notizie. Devo ammettere che la parte più difficile sarà indubbiamente capire come correlare le notizie. Sto valutando alcune ipotesi, nelle prossime settimane vi aggiornerò.

Nel frattempo, passando ad un punto di vista più tecnico, ho cominciato a buttare giù un po’ di righe di codice. L’applicazione dovrebbe mostrarsi all’utente con una finestra in cui visualizzare un elenco di feed sulla sinistra e a lato gli articoli corrispondenti al feed selezionato. In fondo all’articolo poi sarà presente l’indicazione degli articoli correlati. Tutte le impostazioni saranno gestite attraverso file xml.

In questi giorni sono riuscito a realizzare un primo lettore, privo di grafica, che permette di visualizzare le informazioni principali degli articoli di un feed.
L’ho realizzato sfruttando due librerie che ho trovato in rete:

che permettono la lettura di feed sia RSS che ATOM.
Il loro utilizzo è semplice:

Ad esempio per leggere i feed di questo blog il codice è il seguente:

String feedUrl = new String(“https://stenet.wordpress.com/feed/&#8221;);try{

java.net.URL url = new java.net.URL(feedUrl);

com.sun.syndication.io.SyndFeedInput input = new com.sun.syndication.io.SyndFeedInput();

//il comando successivo è quello fondamentale
//si genera un oggetto SynFeed utilizzando come sorgente
//l’url del documento RSS o ATOM da usare

com.sun.syndication.feed.synd.SyndFeed feed = input.build(new java.io.InputStreamReader(url.openStream()));

//si prendono le entries e le si memorizzano in un array

List entries;
entries = feed.getEntries();
com.sun.syndication.feed.synd.SyndEntryImpl[] entriesArray = new com.sun.syndication.feed.synd.SyndEntryImpl[entries.size()];
entriesArray = (com.sun.syndication.feed.synd.SyndEntryImpl[])entries.toArray(entriesArray);

//a questo punto semplicemente si scorre l’array
//e si stampano le informazioni necessarie

for(int i=0; i<entriesArray.length; i++)
{

System.out.println(entriesArray[i].getTitle());

}

}catch(Exception e)
{

//si gestisce l’eccezione

}

Il passo successivo del mio progettino sarà realizzare una piccola interfaccia grafica. Ma qui entra in gioco una mia mancanza. Devo studiare come funzionano le awt e le swing… 😦

Al termine (se terminerò) realizzerò una piccola guida con i passaggi più significativi del progetto.

[La Vida Es Un Carnaval]

Digg! | | | del.icio.us

ste-site