Thursday, December 13, 2007

Blessed and damned @Override annotation in JDK6!

When I've started to play with Java5 new features I'm surprised there no was a way to static check (at compile time) that a method is implementing a method of an interface. There is the @Override annotation but it's only useful to tell to the Java compiler I'm overriding a super class method, nor an abstract one neither an interface method.

Now I discovered Sun staff covered the gap in Java6 just extending the behavior of @Override annotation also to extend abstract methods or to implement interface methods. Great, apart there is no mention on public JDK 6 JavaDocs!!!

Someone raised a bug on Sun's tracker to correct it: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6399361

My Eclipse IDE 3.3.1.1 recognizes the new feature and add the @Override annotation every time I override a method or implement an interface method. Cool.

But now I've the big problem that Roma Framework's sources are full of them and many users reported me they won't compile under Java5! Yes, because Roma needs JDK 5 to compile (but some additional modules that require Java6 in order to use Scripting facilities. The modules now are just Workflow Tevere and ETL).

The fastest solution is to set JDK 5 as compliance level in every single projects don't use Scripting. It works. Blessed and damned @Override...

Tuesday, December 11, 2007

Interviewee by JavaStaff (in Italian)

Today was published the interview about me on JavaStaff portal. The interview is in Italian language:

http://www.javastaff.com/article.php?story=20071211103706919

Finally released Roma Meta Framework 1.0 rc4

This should be the last one before the official 1.0, but I repeat to myself this period from a long. Not that Roma is not mature yet, but I'd like to have a release where the Roma committers don't put so many improvements and news in general.

First of all I've changed the way to release it on SourceForge. Now there are:
  • The Web Wizard distribution containing all startup modules and the most used (as form of sources and binaries)
  • Plug-ins as individual packages such as Workflow, Monitoring, ETL, Scheduler, etc.
The main news of 1.0 rc4 are:
  • New Designer module to customize your application using the Drag&Drop GUI. It allows to change any configured annotations plus to layout screen and form areas
  • Deep refactoring of ETL-XPath module. Now allows to use scripting to define record and field transformers. Plus a new GUI in form of wizard to configure the ETL process. ETL supports extraction from CSV and SQL sources and import on POJO and CSV.
  • New Reporting JR module to generate dynamically reports using Jasper Reports. Report can be in form of PDF, CSV and MS Excel. Now you can display the report of any GUI at the fly
  • New "Web Ready" project type to start from a ready-for-the-web application
  • Enhanced all CRUD inserting "report" button
  • Resolved a lot of issues (see SourceForge tracker)
  • Minor improvements

Monday, November 19, 2007

Does Eclipse Europa crash over and over again?

If even the changes described in my previous post you have problems with Eclipse 3.3 (Europa), then probably you're using the same workspace from a long. Create a brand new workspace and re-import anything.

Remember you had to re-set all code formatting rules (if they are different by Eclipse built-in) as long as Run/Debug configurations.

Thursday, November 15, 2007

Why Eclipse Europa 3.3 crashes

If you're using the latest release of famous IDE you've surely experienced a lot of problems: every 10 minutes it crashes! Time depends by the projects opened and plug-ins installed.

Today my Eclipse crashed at least 15 times. So it was come the time to fix the problem. After some research I discovered the problem. For a well known bug you had to change the way you launch the IDE.

Change your eclipse.ini in the Eclipse's installation directory to:

-showsplash org.eclipse.platform
-vmargs

-XX:MaxPermSize=128m

-Xms40m
-Xmx256m

If you've a lot of memory try my configuration:

-showsplash org.eclipse.platform
-vmargs

-XX:MaxPermSize=128m

-Xms256m
-Xmx1024m

Your productivity will thanks ;-)

Tuesday, November 13, 2007

In Memory of Dave Morse, Amiga Co-Founder, 1943-2007

"David Morse, Amiga Computer's co-founder passed away last week. I will remember him always". This is the news found on http://www.rebol.com/article/0345.html.

I never met David. We're part of different generations. But he worked to create one of best my partner of ever: Amiga computer. I started to play with Commodore 16 when I was about 10 years old. It was the holy communion gift of Diego, one of my best friend. I was amazed how can be easy to instruct a machine to make tasks. Then after so much efforts my mother bought me the first Commodore 64. I spent so much time on it... Playing and programming with the bundled Basic and just 48Kb of RAM.

After some year I was captivated by Amiga 500 computer. At that time I was living in Grosseto, a small town in Tuscany, Italy. So much powerful, so beautiful, so much forward than competitors: 4096 colors, true preemptive multitasking operative system, unix-like shell... So I decided to sold my C64 and all stuffs (games, applications, devices, etc.) to have enough money to buy my Amiga 500. I can remember yet the day my mother, my brother and me went back home with the enormous boxes containing Amiga 500 and the Philips monitor 8833 II. Full afternoons up my keyboard after the school. Amiga was my partner for many years until my last Amiga: the Amiga 1200 model equiped with M68030 50Mhz (a monster at that time).

Thank you again Dave, thanks to your wife Lorraine that surely doesn't know how Dave's creation charmed our generation.

RIP,
Luca

Friday, November 09, 2007

1 Dicembre 2007: JavaDay a Roma

Anche quest'anno la macchina del JavaDay si è messa in moto: sabato 1° dicembre 2007 ci sarà la seconda edizione del JavaDay a Roma. Molti i talk interessanti di cui uno su Roma Meta Framework. Questa volta ho intenzione di partire quasi da subito con una demo, mostrare il designer e il funzionamento "interno" del framework aiutandomi con qualche slide.

Sito ufficiale Javaday di Roma: http://roma.javaday.it/roma/index.vm.

Ci vediamo li no? ;-)

Programma completo:


Next generation Web

Java Open Source

Core Java, what's hot

Java enterprise

09.00

-

9.40

Second Life e Java: prospettive di comunicazione

Tapestry In Action , nuovi modi di sviluppare applicazioni web

Introduzione alla tecnologia Sun SPOT

Magic Box project: Effective K .I .S .S . with SpringFramework

09.50

-

10.30

JSF Integration in JViews - intervento in lingua inglese

Sviluppo rapido di applicazioni utilizzando DDD e Roma Meta Framework

Sessioni Multimediali Voce Video, IM e Presence con i nuovi standard IMS/SIP [SipWork]

SpagoBI: la piattaforma open source di Business Intelligence

10.40

-

11.20

Il Web del Futuro: Enterprise e Web Semantico

Sviluppare applicazioni basate su BPEL utilizzando NetBeans e JBI

NASA World Wind for Java: come integrare mappe geografiche tridimensionali nelle applicazioni Java per il desktop

Java e i linguaggi dinamici: come incrementare le potenzialità espressive di Java

Domain Driven Design, agilità e patterns, architettura e test first

11.40

-

12.20

Rich Internet Application con Java e Flex

Skype4Java

Programmazione Orientata agli Aspetti: cos’è, quando e come applicarla

Terracotta DSO, una soluzione innovativa per software enterprise

12.30

-

13.10

Usare Google Web Toolkit per costruire potenti applicazioni AJAX in Java con tanto di gestione offline dei dati

Parancoe: usare i DAO senza implementarli

JRuby e DSL

Clustering a Real World Enterprise Application with Terracotta :Atlassian Jira

13.20

-

14.00

Grails, sviluppo rapido di applicazioni web in Groovy + Java

Testing di sistemi enterprise utilizzando strumenti FLOSS

Ruby On Rails

Progettazione di un sistema di Single SignOn che permette l'accesso tramite tipi diversi di credenziali

Wednesday, October 24, 2007

Gnocchi on Wednesday





Today is Wednesday. In Italy is not the classic day to eat Gnocchi (it should be Thursday), but today Luigi and Alessandra made an exception.

In the interview Luigi told about your Gnocchi recipe: "I simply apply the design patterns on cooking".

Wednesday, September 26, 2007

Sun Tech Days Italy - Rome

Today I attended the Sun Tech Days Italy event in Rome. By a fast look at the agenda speeches seem to be pretty interesting but in general in this kind of events IMHO the quality is very poor, maybe also for the very short time available for every single talk.

I was wrong. The afternoon was flighted since all talks was very interesting! In the morning, instead, I was in the JUG stand along with Mara Marzocchi. JUG Roma staff is working for the next upcoming Java Day 2007 event in Rome as well.

Below the agenda I attended today:










Java Scripting: JavaFX Script and JRuby - Sridhar Reddy

Much more deeper than the talk listened at Jazoon '07. Today Sridhar talked about the JavaFX syntax language. JavaFX contains very interesting features. One for all the bind keyword that allow to listen changes in chain.
Java Persistence API: Simplifying Persistence - Sang Shin

Sang is a veteran speaker, nice and never predictable. What a shame for no one words about JDO specification!
Ajax and Web 2.0 Related Frameworks and Toolkits - Sang Shin

Sang explained in detail all kinds of Ajax frameworks (Dojo, DRW, GWT, etc.) with some slides and a working demo for every single one!

Building Rich Web Applications using jMaki and Phobos - Doris Chen

Doris fired me the interest for jMaki, what Jazoon's talk didn't! Very cool tool. I'd like to spend a little more time on investigating about the integration with Roma Meta Framework.


Here the full agenda: http://it.sun.com/sunnews/events/2007/sept/jc07

And in conclusion:
- I note down some improvements in Roma based on frameworks seen today.
- I forced me to give a chance to the NetBeans IDE. When? After the release of final 1.0 of Roma Framework, of course :-)

Friday, September 07, 2007

Preview of Release 1.0rc2

For most of you August is a "dead month". Roma staff, instead, worked hardly to complete the release of 1.0rc2. Now you can taste a preview by downloading it from the SVN repository.

Take care to read information about compatibilities issues and migration here:

http://romaframework.xwiki.com/xwiki/bin/view/Main/PreviewOfRelease10rc2

Wednesday, August 29, 2007

Ruby on Rails and its Database Driver Approach: back to the past?

I admit Ruby on Rails (RoR by now) contributed to know the convention-over-configuration pattern and now a lot of tools and frameworks are adopting it.

But I continue to hate the RoR's Database Driven approach: Where is the OO model? It seems to be back on PHP/Visual Basic!

Using Roma Meta Framework you start from your pure OO model following the DDD approach. The persistence aspect will convert the model to database. Dot. Let's think OO and the Aspect implementation will do the rest.

Monday, July 16, 2007

SourceForge renamed SubVersion URL of all projects

Just today I discovered the reason RomaFramework's SubVersion repository wan't work anymore since 4 days: SourceForge renamed the SVN URL of all projects inserting the project as prefix.

Before:
https://svn.sourceforge.net/svnroot/romaframework/trunk

Now:
https://romaframework.svn.sourceforge.net/svnroot/romaframework/trunk

The great thing is that you can't find any news about it in the SF.net homepage!

Friday, July 13, 2007

Come fareste senza Messenger?

Che succederebbe se qualcuno togliesse Messenger dal vostro PC? Questa è la breve trama del colossal "L'ultima Trillata" in uscita nelle sale tra pochissimo. Qui sotto potete vedere il trailer:

Friday, July 06, 2007

Eclipse 3.3 Europa sucks!

Three days ago I installed Eclipse 3.3, called also as "Europa". Today I'm back to use the previous one since it's much more stable and fast! Moreover the new Eclipse Update Manager works bad since it alerts me about new updates but I can't download and install its from the IDE cause unknown error!

Eclipse 3.3 Europa sucks (for now)!

Wednesday, July 04, 2007

Luca discovered the holy drink for Java Developers




I discovered the holy drink for Java Developers: The Java Green Tea. Today at 5:00 pm o'clock I'll try it and for the rest of the week. In the next days I will be able to write if the Java Green Tea improves the performances of a Java Developer.

Tuesday, July 03, 2007

Resoconto Jazoon 2007 - Zurich Switzerland

Eccoci qua,
a pochi giorni dalla fine della conferenza Jazoon 2007 posso fare un resoconto della manifestazione. Sarò sintetico come al solito :-)

Cominciamo con le impressioni iniziali. All'inizio ammetto che non mi aspettavo gran che dall'evento. Sarà perchè era alla sua prima "release", sarà che pochi nel giro avevano interesse a parteciparvi. Comunque per me era un'opportunità per dare un'occhiata a quella che sarebbe potuta diventare una conference di riferimento per l'europa, cosi come oggi è il Javapolis.

Organizzo il viaggio, trovo l'albergo non proprio a buon prezzo ma si sa che a Zurigo la vita è cara. Per il volo non riesco a sfruttare la convenzione del Jazoon perchè il codice convenzione non viene accettato dalla prenotazione online della Swiss Air. Per fortuna il biglietto è stato omaggiato dal JUG Roma anche perchè ho appreso solo dopo che sarebbe costato oltre € 1.200,00!

Sapevo che della capitale saremo stati solamente in 2: Davide Cerbo e io. Di certo non avrei mai immaginato quanto forte sarebbe stata la partecipazione italiana all'evento. Eggià, perchè tra JUG Padova (ne ho contati 3), JUG Milano (2), JUG Sardegna (credo 3) e il JUG Torino (2) in tutto i suonatori di mandolino ammontavano almeno a una dozzina, quella sporca dozzina...

Zurigo è bella. Tutto ordinato e funzionante come gli ingranaggi di un orologio (Svizzero appunto...). La gente è cordiale ma forse sorride poco per i miei gusti. Dappertutto ci sono ristoranti e caffè italiani, anche se la lingua ufficiale è il tedesco. Qualche stranezza l'ho trovata come gente in giacca e cravatta che gira in Monopattino (si, hai letto bene!) e altre cosette che ho pubblicato in quest'altro post. Toccherebbe scendere più a sud per trovare il cantone Italiano.

Il tempo non è stato gran che clemente, e gli unici 2 giorni di sole me li sono goduti tutti. Sopratutto il giovedì pomeriggio con Davide ci siamo girati 1/2 Zurich (Il centro, il giardino cinese, ecc.). Qualche foto l'ho pubblicata su Flickr.

Passiamo alla conferenza vera e propria.

La location devo dire che mi è piaciuta molto. Tutta l'organizzazione, i notebook disponibili per navigare, la registrazione nonchè il guardaroba erano in un locale davvero fashion, il Platins. Nel Platins sono stati organizzati anche tutti i pranzi, l'after hour del lunedì e il party di mercoledi notte. Invece le sessioni e gli sponsor erano tutti nel'edificio adiacente, un vero e proprio cinema multisala. Tutto fa parte del nuovo centro commerciale Silhcity inaugurato qualche mese fa.

L'organizzazione è stata davvero impeccabile. Sono o non sono svizzeri? :-) Proiezioni animate, Jingle a chiusura degli interventi, messaggi in broadcast a tutte le sale, fotografi, ecc.

Prima ho parlato di pranzi. Ebbene la scelta non era molto vasta, ma complessivamente non è stato malaccio e c'erano sempre drink gratis a volontà.

La maggior parte degli sponsor erano società di consulenza o man power svizzere che cercavano come segugi consulenti da arruolare nelle proprie file promettendo cifre da capogiro. Ebbene si, in Svizzera ci sono moltissime banche e i lavori sono ben pagati. A occhio e croce potrei dire che i compensi lordi sono il doppio di quelli italiani e anche di più. Poi calcolando che il regime fiscale è meno "pressante" che nel Bel Paese. Ok, lo ammetto, un pensierino c'è stato ;-)

Per quanto riguarda i talk non c'è ne è stato nessuno che mi ha incuriosito particolarmente: nessuna tecnologia, framework o tool che puzzasse di nuovo.

Quello di cui sono davvero contento è l'aver conosciuto di persona gli altri ragazzi dei JUG italiani e in particolare: Fabrizio Gianneschi, Fabrizio Giudici, Emmanuele Sordini, Lucio Benfante, Enrico Giurin, Paolo Foletto, Luisa, Marcello Teodori, Giancarlo Pace

Filippo Diotalevi, Bruno Bossola e Davide Cerbo li conoscevo già (Filippo un mio ex-collega, Bruno al JavaDay e Davide è del JUG Roma).

Martedi pomeriggio ho partecipato al BOF (Birds of a feather) session JUG Leaders Panel dove abbiamo parlato di JUG, Java, Sun, cooperazione, strumenti per gli eventi e altro. Anche questa è stata una buona occasione per socializzare. A proposito... Devo ancora reperire la foto di gruppo. Vatti a ricordare chi l'ha scattata...

Consiglierei il Jazoon ad amici e colleghi? Direi di si, a parte il prezzo altissimo. € 1,245 (la early registration costava la metà) sono davvero tanti. Sicuramente troppi per una partecipazione individuale e comunque non trascurabile per la piccola-media azienda. Comunque c'è stato anche una breve dritta a fine conferenza su come non pagare per il prossimo Jazoon 2008: proporre uno speach o essere un JUG Leader. Non è forse un ottimo modo per spingere a fare sempre di più? ;-)

Comunque una cosa è sicura: il prossimo anno mi armerò con almeno uno speach su Roma Framework e una sessione dimostrativa "sul pezzo".

Come conclusione lancio anche un razzo segnaletico sperando che Sun Italia e qualche sponsor interessato colga quello che sto per dire:

E se facessimo una Java Conference non più in Italiano ma in Inglese?

Se fosse organizzata con uno spirito internazionale? Ultimamente l'interesse verso il Java Conference sembra scemato dato il successo nel 2006 dei JavaDay. Ditemi cosa ne pensate.

Ora è davvero tutto: ci vediamo al JavaPolis ;-)

Thursday, June 28, 2007

Live from Jazoon 2007

If you want to know about Jazoon conference details look at:

Jazoon 2007, 3rd and last day preview


Here we are,
yesterday afternoon Davide and me taked a look to Zurich city after the only "Social Event" we consumed, the 5D Cinema: Cool but the 4D Cinema in Las Vegas was more realistic IMHO. Anyway Zurich has very beautiful places, anything is in order, people continues to walk smootly: no one run! So much different by Rome...

I've so many photo in my Nikon, but I missed to take the cable with me, so I'll publish once home (It's time I open a Flickr or similar account).

After these three days in Zurich I can make a face-to-face between Zurich and Rome:
ZurichRome
Business men cross the city using the mono pattinoOnly children use it
Trams are always on time and never full, trains tooFew trams but bus and metro are often full and overdue
So few cars around, probably since public transportation works fine and other people use cycle (and mono pattino, see above)Too much cars and moto cycles!
Vey few people smile, in public they are very formal, maybe in private no? (I look very strange shops in the city...)You can hear laugh and see smiles in most faces
Everything is in its place and in orderUnordered impression, much more "lived"
Many Italian places such as restaurants and barsI don't know any swiss restaurant in Rome!


I also enjoyed the party in the night, where Bruno Bossola sang as a real singer!

Wednesday, June 27, 2007

Jazoon 2007 conference: 3rd day


Yesterday I was attendeed to JUG Leaders Panel BOF and we've talked about the JUG cooperation in tools and initiatives.

The third day of Jazoon 2007 Conference is not finished but the feedback on today is much positive. Surely the most interesting conference day until now. I selected the following sessions:

This afternoon there will not be technical session but "Social Events". We have not yet take a decision on what to do...

Note: Picture from Fabrizio Gianneschi

Tuesday, June 26, 2007

Jazoon 2007, 2nd day

First impressions about the Jazoon 2007 are quite positive. The location is very beautiful, the environment much more "fashion" than I thought. I like Zurich, no one goes running. Anything is at your place. Maybe too much!

The average level of sessions is quite lower than I expected. Maybe 40-50 minutes are too few to present something in deeper. But it should be so: a way to discover interesting points to look in deep once home.

I can't find a cool solution against Roma Meta Framework, nothing of really innovative! This gives me a lot of reasons to go forward with my job.

Tonight or tomorrow I'll post comments about the second day.

Monday, June 25, 2007

Just arrived in Jazoon 2007

After a lot of troubles I arrived in Zurich, Switzerland! My flight was at 9:40 am but I had to reach the check-in about a couple of hours before. This morning all trains from Roma city to the Fiumicino Airport was suspended for a non planned public protest.

After some minutes of panic a girl I never seen before, come in Parco Leonardo station and invite the hostess sat near me to go along with her to the airport. Since the hostess and me are talking to get a taxi together, that girls seems to come from the sky!

In the car I've discovered that we all togheter are neightbour.

So my trip was saved as much as my conference. The picture you see was shooted by Davide Cerbo, a JUG Roma member while we're waiting to the first one talk: Me as member of Simpson family!

Friday, June 15, 2007

First one AssetData Go-Kart contest

Today, friday June 15th 2007 there will be the first one AssetData Go-Kart contest: an event organized by me some days ago. There will be a bounche of AssetData people and some friends that will challange on the road.

I think a little bit of sane competition on the road would improve also the reflexes on writing down code :-)

Monday, June 11, 2007

SourceForge project nomination

If you're using Roma in your project or you think Roma Framework is the most innovative project in the Java market, then why don't vote it at the SourceForge 2007 Community Choice Awards?

Click on the banner and select your vote. You can express the vote for Roma in multiple areas such as: Best Project, Best New Project and Best Tool or Utility for Developers

Friday, May 25, 2007

Jazoon conference



Starting from June, 25th 2007 until June, 28th 2007 I'll be attended to the Jazoon conference in Zurich, Switzerland. It's a technical conference on Java technologies and directions.

Anyone will be present?

Friday, May 04, 2007

Roma framework validation

Today I've successfull integrated the Validation Rules inside Roma Meta Framework.

(1) New annotation attribute to validate against RegExp rule:

Example:
public class Account{
...
@ViewField(match="^[_a-z0-9-]+(\\.?[_a-z0-9-]*)*@?[a-z0-9-]*(\\.?[a-z0-9-]*)*$")
private String email;
...
}


(2) Integrated the Informagen-Components Component library written by Will Gilbert.

Now Roma uses:

- IntegerTextField for int/Integer attributes
- NumericTextField for float/double/Float/Double attributes
- RegExpTextField for String attributes with "match" annotation (via Java5 annotation or Xml Annotation)

(3) New mean for min/max annotations

Now Roma uses:
- In String fields min/max are the minimum/maximum length
- In number fields min/max are the minimum/maximum value

Example:

public class Account{
...
@ViewField(min=3, max=32)
private String name;

@ViewField(min=18, max=130)
private String age;
...
}

Thursday, May 03, 2007

OW2 Election of Individual Members Board of Directors

Some days ago I candidated me as individual member representative in OW2. OW2 born from the merge between ObjectWeb and Orientware. For most people ObjectWeb is the European Apache, for other is the French Apache! :-)

"The OW2 Consortium was initiated on January 1, 2007 through the merger of ObjectWeb and Orientware, two leading open source middleware communities of renown industry players, innovative start-ups, prominent academic organizations and individuals from across the world." - Cut&Paste words from official http://www.ow2.org site.

Yesterday the election was finished and François LETELLIER collected higher votes, 49.1%, against my second place with 34.0% votes.

My congratulations to François!

I hope to see OW2 to gain the developers interest as much as Apache.

Wednesday, April 11, 2007

Integrating Terracotta in Roma

I'm working to integrate Terracotta with Roma Framework. The problem I encountered until now are due to Echo2 framework. It stores in HttpSession references to internal components and HttpSession itself.

This is the reason because Terracotta Session Configuraor asks me to insert in the tc-config.xml so many classes and boot-classes!

What I'd like to try is to store only user domain objects. If will work, the clustering workload will be much more light and the user (programmer) will not worry anymore about to assure any frameworks he's using to be terracotta compatible.

Good luck to myself!

Tuesday, April 03, 2007

Released version 1.0 rc 1

Yesterday I've released Roma Framework version 1.0 release candidate 1 after about 4 months from last official 0.9.9. I hope to close the release candidate phase for April 2007.

There are again few more things to resolve before final 1.0:

- PersistenceAspect mode: define a better way to declare it
- Portlet support: areas are rendered not in order mode
- Tree component support
- #1693538 Divide Spring file in multiple sub-files

Resolve known bugs:

- #1684653 portlet

Friday, March 30, 2007

Terracotta presentation

Yesterday I met Jonas Boner, one of Terracotta people. His presentation and demo show to me again the powerful of this tool.

Terracotta allows to cluster any application acting on single POJO by enhancement (byte code changing).

I've planned to integrate in Roma Framework for the next week!

Sunday, March 25, 2007

Working on Roma's PersistenceAspect

After the last application developed using Roma Meta Framework I spent much time to refactor and optimize the performance of PersistenceAspect module. Until now Roma always used the JDO detaching mode. It works very well for the most cases, but when you had to execute many operations inside the same transaction or when you don't need to have the objects writeable.

JDO Detaching consumes a lot of CPU resources since the objects are copied and memory since for the same reason. For normal CRUD operation the difference is trascurable, but in long transactions is very sensible.

For this reason I've refactored the PersistenceAspect to have 3 implementations:
- AtomicPersistenceAspect: operations are always atomic and it continue to uses the "classic" detach mode.
- TxPersistenceAspect: operations share the same transaction (you had to call commit/rollback methods!) and you can access to the objects also after the commit/rollback in read-only mode
- NoTxPersistenceAspect: No transaction is used and you can access to the objects also after the commit/rollback in read-only mode

Furthermore you can select the strategy also when you retrieve the object by:
- PersistenceAspect.loadObject()
- Query.setStrategy()

In the next week I'll migrate all CRUD operations to use the NoTx Strategy.

I started also to write a detailed HowTo about the Persistence Strategy.

Stay tuned!

New logo for Roma [Meta] Framework


Luca Bianconi is the author of the new Logo of Roma [Meta] Framework. It's online starting from friday 23 March 2007.

The logo is very simple and was inspired by Roma city (Roma is the original and current name in Italian of Rome city!). The "O" of Roma was replaced by the Colosseum, maybe the most famous symbol of my city. The author of the Colosseum image is Stefano Linguerri; some time ago he created it for the JUG Roma logo.

The selected font for the Logo is, obviousy, the Times New Roman ;-)

Do you like it?

Comments about the Logo are welcome in this post.

Monday, March 19, 2007

Roma supports portlets!

Roma Framework support the Portlets! They are not JSR-168 portlets but just POJO that are rendered as seperated-independent boxes. You can move the portlets around your desktop ala Google Personalized Homepage. Each box lives independently from others. Very cool!

I've adjusted the Roma Test Presentation demo application to use this feature.

Below a screenshot:

Tuesday, March 13, 2007

From Jakarta Common Logging to SLF4J: NDC is missed?

Reading the Sergio's blog I wrote down to avoid to use Jakarta Common Logging APIs (JCL) in favour of Simple Logging Facade For Java (SLF4J)

I decided to refactor all Roma Framework in support of SLF4J, but I'm surprised to not find an interface for Log4J Nested Diagnostics Contexts (NDC)!!! NDC is a static class that allows to track user session information in Log4J.

So now Roma Echo2 module will depend by SLF4J and Log4J directly. Tomorrow I'll write a generic interface to abstract NDC behaviour + Log4J implementation. Does SLF4J guys will appreciate this contribute? We'll see ;-)

Tuesday, February 06, 2007

Web 2.0

What is the Web 2.0? Just another buzzword? Maybe!

But take a look to the video below. It shows the social and technological changement of "that" buzzword in our life. Cool!

Friday, January 26, 2007

Waiting for Roma 1.0 apha

While Roma project staff is working to release the first alpha version of 1.0 many things are changed in SVN repository:
  • USERS module was splitted (refactored) in USERS + ADMIN following responsability rules
  • New Xml Desktop to render component in dynamic desktop described in XML form
  • New JPOX libraries that resolve some bugs
  • Much other
Following this link you'll find more details about integration with old projects based on Roma:

Waiting for Roma 1.0 alpha

Tuesday, January 23, 2007

Next upcoming JUG Roma meeting

On the next Thursday 25th January 2007 there will be the ninth JUG meeting in Rome. For the first time the location will be my company: AssetData. To reach the meeting see the offical site: www.jugroma.it.

On Tomorrow morning I'll leave Rome to follow a customer in Milan. If the air company will not make the usual delay I should came back on Thursday 4:30 PM to the Leonardo Da Vinci Airport. Just in time to reach AssetData before the starting of meeting!!! ;-)


Below the agenda, in italian:

Primo talk (non tecnico): 18.00-18.40

Titolo: JavaPolis: io c'ero! Cosa è successo e di cosa si è parlato
Relatori: Alessio Pace, Paolo Argangeli, Simone Federici

Jug Session 8.40-19.20

  • Brindisi per il primo compleanno del Jug Roma
  • restyling di www.jugroma.it (chi si offre? Come? raccolta idee e formazione di un gruppo di lavoro per il nuovo sito)
  • creazione di corsi java under 18 a cura dei membri del jug (idea fattibile? Come?)
  • proposte JugRoma 2007
  • acquisto di un VirtualServer per il Jug (valutazione)
Secondo talk(tecnico):19.20-20.20

Titolo: Antipatterns: se li conosci, li eviti!
Relatori: Simone Federici e Giorgio Vinci


Monday, January 22, 2007

The Roma Project

On past Friday I've changed the logo from "Roma Meta Framework" to "The Roma Project". The reason resides to avoid confusing people about Roma goals and mission. I'd like people speaks of "Roma" and not of "Roma Framework".

However the first release 1.0 alpha is very close to been published. The main change with 0.9.9 is the dynamic desktop management. You can define the desktop composition in a desktop.xml file. This feature allow to create very complex application without write any Echo2 code.

Monday, January 08, 2007

Microsoft Vista? No thanx, but...

Yesterday I've installed a tiny tool called Vista Inspirat. It changes the look & feel of your Microsoft Windows XP Operative System with the look of the latest Windows OS version. Cool!

The GUI is very nice and seems to me more usable. The general speed of the user interface seems faster, too. I don't know why, but the difference is sensible on my Notebook Acer Aspire 5670...

I never seen Vista before now, but with Vista Inspirat the layout results optimized and much more user friendly. I'm talking about all windows in general, the Explorer application and Internet Explorer. Also the new taskbar is very similar to the MacOs X.

Why I use MS Windows? Simply: because IMHO Windows is much more productive than Linux distributions I tested until now. Although I started using Linux since the Red Hat 5.x on my wonderful Amiga 1200 (with some expansions) 8-9 years ago, I find Windows XP the best OS for client/desktop tasks.

On the other hand I'll never try to install Microsoft Windows on a server machine. Unix/Linux OS on production Server wins to hand down.

My 0,02 €