28/03/2006

Rilascio Bazaar 1.0 pre5



Sono felice di annunciarvi il rilascio di Bazaar 1.0 pre5.

Il war file (che contiene anche il codice) è possibile scaricarlo da qui.

Qui trovate le novità offerte da questa nuova release.

Qui potete vedere la demo del prodotto.

Aggiornamento 1 29/3/2006
Mi scuso per i links non funzionanti. Ho avuto problemi con il dyndns, sistemerò tutto nel pomeriggo.
Scusate per il disagio.

Aggiornamento 2 29/3/2006
Ora i links dovrebbero funzionare. Mi scuso ancora per il disagio. 

21/03/2006

WYSWYG HTML Editor per i vostri siti web

In questi ultimi tempi ho ricevuto alcune richeste di hosting di Bazaar sul mio server che volentieri effettuo gratuitamente, finchè non si satura la banda. Se anche voi avete amici o parenti che vogliono aprire un negozio online scrivetemi una mail a questo indirizzo.

Ogni volta che ricevo una richiesta devo svolgere alcune attività per ora non automatizzate. Il mio obiettivo è quello di deployare l'applicazione e lasciare all'amministratore l'onere di personalizzarlo.

Bazaar è personalizzabile al 95%, l'altro 5% richiede il mio intervento nelle seguenti attività:

- inserire le condizioni di vendita;

- inserire i contatti;

- inserire le informazioni del negozio;

- personalizzazione homepage (con Bazaar-pre5 lo farà l'amministratore);

Ora nella prox release metterò nella fase di amministrazione un pannello di controllo per configurare quelli che sono i parametri del negozio. Tra questi parametri ci sono queste 3 descrizioni.

Ora il testo di queste descrizioni dovrebbe essere formattato (cioè usare grassetto, links, ecc.).

Usando semplici Text Area l'amministratore dovrebbe usare codice HTML per formattare il testo, il che è una pazzia. Perchè un amministratore Bazaar dovrebbe conoscere l'HTML?

Ho pensato, quindi, che nella prox release queste text areas dovevano essere editate attraverso un editor WYSWYG. Mi sono messo alla ricerca e ho trovato questo tool gratuito: TinyMCE.

TinyMCE è rilasciato con licenza LGPL, usa javascript ed è altamente configurabile. Io non avrò bisogno di molte funzionalità, mi servirà solo: grassetto, corsivo, sottolineato, font e gestione links.

Non ho ancora provato questo tool, ma promette bene. Appena rilascierò Bazaar-pre5 (a giorni) e mi dedicherò alla nuova versione, ci giocherò un pò e vi farò sapere come è andata.

PS
Se conoscete prodotti alternativi non esitatea segnalarmeli.

27/02/2006

Ricerche Google-like con Apache Lucene


In questo post vorrei parlarvi di uno dei problemi classici nelle applicazioni di shopping online: ricerca di prodotti in stile google.

Generalmente, per affrontare questa categoria di problemi si utilizzano search text engine scritti ad hoc o da terze parti. Uno dei search text engine più famosi per J2EE è Apache Lucene. Anche quando l'applicazione si appoggia già ad un database, è sempre sconsigliabile utilizzare questi per tematiche di search text.

Per rendere più chiaro l'uso di Apache Lucene ho scritto il seguente articolo che descrive l'uso di questo tool nel nostro prodotto Bazaar. Il codice di Bazaar con questa nuova feature non è stato ancora rilasciato, quindi consideratelo un'anteprima.

13/02/2006

Transazioni JDBC


Oggi voglio proporvi un articolo scritto da me questo fine settimana sulla gestione delle transazioni in un'applicazione web.

Sappiamo che Sun fornisce le specifiche JTA per la gestione delle transazioni, ad ogni modo, a volte può essere sufficiente, per i propri bisogni, un'implementazione JDBC fatta in casa.

Nel wiki di programmiamo trovate l'articolo in questione. Leggetelo e fatemi sapere la vostra opinione ed eventuali suggerimenti per migliorarlo.

Chi vuole può divertirsi ad integrare questo codice in Bazaar, l'idea è quella di sostituire l'implementazione di JSPCart con uno strato DAO fatto come si deve.

In settiamana cercherò di pubblicare un articolo su come si dovrebbe implementare uno strato DAO per la nostra applicazione di online shopping.

22/01/2006

Bazaar. Un negozio online gratuito.

Oggi voglio presentarvi un mio piccolo progetto open source che, spero possa tornare utile a tutte le persone che desiderano aprire un negozio online e anche alle persone più tecniche che desiderano apprendere come scrivere una web application.

Il progetto si chiama Bazaar ed è un semplice negozio con carrello online basato su JSPCart.

Con questo strumento potete aprire anche voi un semplice negozio online in modo assolutamente gratuito. Quello di cui avete bisogno è un PC (che funzionerà da server) e una connessione ADSL con ip pubblico (tipo Libero, ad esempio).

Sul PC dovete installare il database server MySQL, il web container Tomcat e il codice di Bazaar come descritto in questa pagina.

La documentazione non è ancora completa, ma su questo blog segnalerò di volta in volta i vari update.

Partendo da JSPCart ho fatto alcune modifiche che mi hanno portato allo stato attuale del codice (bazaar-pre4.war).

Qui potete vedere una semplice demo. La grafica non è molto accattivante ma penso che migliorerà a breve. Tutte le funzionalità, però, sono disponibili. Ovviamente nella demo sarà visibile solo la parte customer e non la parte di amministrazione, se lo scaricate, però, potete vederle entrambi.

Qui potete vedere un esempio di negozio con prodotti veri (lo sto mettendo su per un mio parente), mancano solo i prezzi.

Sto realizzando una nuova versione in cui ho aggiunto la funzionalità di ricerca stile google utilizzando apache lucene. Spero di pubblicare presto i sorgenti.

Mi piacerebbe aggiungere molte funzionalità come:

- pubblicazione automatica dei prodotti su Froogle, Ebay, etc;
- miglioramento del codice con codifica che rispetti di più i principi di design patterns;
- completa integrazione con struts;
- supporto paypal (già implementato ma commentato per ora) e carte di credito;
- creazione di servizio di hosting con creazione automatica di negozi e pubblicazione gratuita di inserzioni;

Ovviamente faccio queste cose principalmente per passione e per motivi didattici, se vi va di contribuire non abbiate timore a farvi avanti.
Grazie

PS
ultimamente sto avendo problemi con il router, se non riuscite a collegarvi riprovate più volte.