Monday, December 22, 2008

Roma JavaDay III edition in Rome


Today, 3 years after its inception, the JavaDay in Rome is the technical reference event for Java technology in Italy. It boasts a terrific turnout and the participation of the most eminent speakers of the community.

The Rome JavaDay takes place at Università Roma TRE with the purpose of establishing a privileged channel with university students. It has a highly technical connotation and is a joint-effort of three Italian Java communities, namely Java User Group Roma, Java Italian Portal e Java Italian Association.

Attendance is free of charge.

IMHO the most interesting talk is: ROMULUS. Java Web Development made productive

Wednesday, December 17, 2008

1° Trofeo di Texas Hold'em "All in Asset"


Ieri sera si è tenuto in Asset Data il primo trofeo di Texas Hold'em:

"All in Asset"

Il vincitore è stato Alfonso, secondo classificato Molins.

Alfonso ha vinto praticamente la maggior parte delle mani. Quelle in cui non ha vinto è perchè è uscito in corsa per timore, ma alla fine i punti in mano suoi erano sempre vincenti su tutti!

Che spettacolo vederlo con tutte quelle torri di fiches... Sembrava Rupert Murdoch!

Con tutta la fortuna che si è ritrovato...Gli è stato consigliato di chiamare subito a casa per controllare La Donna! ;-)

Friday, December 05, 2008

Java Pretty code II

Another piece of pretty code:

public class MyClass{
 public MyClass() {
 }

 public MyClass(String iClass, String projectPath) {
  /* Instantiates MyClass */
  MyClass obj = new MyClass();
  obj.create(iClass, projectPath);
 }
}

Why to create an object of the same class to call the method on it?

To the next piece of pretty code!

Java Pretty code

Today, between a debug and another one I found this nice thing:

private VectorString> extractFields(Class classObj) {
 String className = classObj.toString();
 className = className.substring(6, className.length());

 Class obj = null;
 try {
  obj = Class.forName(className);
 } catch (ClassNotFoundException e1) {
  e1.printStackTrace();
 }

 ...
}

1) Please note the toString() call and then the extraction of the result cutting from the 6th character... But why don't simply to use the getName() method?
2) And at the end... Why to extract the name of the class and then reload the class by the extracted name to obtain...always the Class taken as parameter!

These are pearls folks!

Thursday, November 27, 2008

Roma Meta Framework: plug-ins management

Starting from release 1.0.0 Roma allows to be updated by using the new wizard commands:
  • check
  • install
  • update
If you've downloaded the 1.0.0 from SourceForge type:

> roma check

* admin... version 1.0.1 (25-11-2008)
* core... version 1.0.1 (25-11-2008)
* persistence-jpox... version 1.0.1 (25-11-2008)
  project-web... updated
* project-webready... version 1.0.1 (26-11-2008)
  scheduler-quartz... updated
* users... version 1.0.1 (25-11-2008)
* view-echo2... version 1.0.2 (26-11-2008)
  web-jetty... updated


You can install the new module you want just typing:

> roma install core

core... Installing version 1.0.1
Extracting directory: lib/
Extracting: lib/roma-core.jar
Module core installed correctly: version 1.0.1 (25-11-2008)


To know new plug-ins released by the community type:

> roma check new

To update the installed module ('core' in example above) to your project use:

> roma update core

That's all folks. No more pain with roma upgrade ;-)

Monday, November 10, 2008

Finally the official release 1.0 of Roma Framework is up

I'm tired out but happy! :-)

After about
one year I've released the official release 1.0 of Roma Meta Framework in Source Forge.

So many news from the last 1.0rc4 version: several new plug-ins, thirdy parties contributions, the free PDF manual, better module management and performance improvements.

Download the last release of Roma Meta Framework

Below the main changes:

-------------------------------------------------------------------------------
VERSION 1.0.0 (November, 10th 2008)
-------------------------------------------------------------------------------
Main addictions and improvements:

CORE module:
- New modules management. Now you can check for new modules, new releases of them and install it over the air. Dependencies are well considered
- New Logging aspect to abstract logging and to use logging facilities such as @LoggingAction() to log any POJO action
- Support for new View Aspect that works with XHTML 1.0, CSS2 and JSP
- Support for new Semantic Aspect available via Romulus project using Open Source Jena framework

CHART-JFREECHART module:
- New module to create graphs using the popular JGraph library

ETL-XPATH module:
- Strong refactoring of the engine
- New JDBC Extractor and Importer modules
- New Wizard to let to the user the importing phase

PERSISTENCE-DATANUCLEUS module:
- New Persistence Aspect implementation using the new DataNucleus technology. Supports JDO 2.1 and JPA 1.0

PERSISTENCE-JPOX module:
- Default like operator works like before, but it considers the presence of the special character "*". If found treats it as the "%" of SQL like syntax. This allow to execute searches with wildcards
- New "optimistic" transaction mode

SCHEDULER-QUARTZ module:
- New UI
- New wizard to build simple expression without the knowledge of CRON syntax

USERS module:
- Deep changes to the USERS module: new realm entity to group accounts, profiles, infocategory and other entities in a common "realm". New "Anonymous" profile to allow to profile for the non-authenticated user
- BaseAccount and BaseProfile now extends the common AbstractAccount abstract class in order to reference accounts or profile in the same manner just declaring as reference type the AbstractAccount

SCHEDULER-QUARTZ module:
- Calendar view

SCRIPTING-JAVA6 module:
- New module implementing the Scripting facilities of Java6. By separating all scripting features in Roma in only this module we have gained the Java5 compliance for all but this module, obviously

SERVICE-CXF module:
- New module to expose a POJO as a Web Service using Apache CXF framework

VIEW-ECHO2 module:
- Strong refactoring of components. Now ComponentFactory is obsolete and now anything is responsability of the Rendering implementation
- Management of multiple Echo2 stylesheets
- Sensible faster execution

WORKFLOW-TEVERE module:
- New Workflow module with transactional engine and Web GUI. It covers most common workflow patterns

WIZARDS:
- New 'check' wizard to check for new modules or new version of installed modules
- New 'install' wizard to install new modules or new version of installed modules
- New 'update' wizard to update Roma user projects with new version of modules installed
- CRUD now generates the Repository classes for each entity.
- Support for environment variables like "author". You can set/get variables in Roma. Set the "author" variable to have all generated sources with you as author

TEST-PRESENTATION app:
- Changed layout of Test Presentation application

OTHERS:
- Resolved a lot of issues (see SourceForge tracker)
- Tons of minor improvements.

Tuesday, September 23, 2008

Back to work: Roma Meta Framework updates

After some days since last post I'd like to share latest more relevant news about the Roma Meta Framework project:
  • New Web Site in replace of the older one made using XWiki. Take a look: http://www.romaframework.org
  • Finally we have the new Roma Handbook manual available in PDF and updated at weekly basis.
  • We're at good point (together with Gesfor company in Spain) on development of the new view aspect that will join side by side the Echo2 View Aspect. The new Aspect generates pure XHTML 1.0 strict & CSS2. Furthermore supports partial/total use of JSP template. Very cool.
  • Imola Informatica, member of Romulus consortium, has developed the Eclpise plugin for Roma. Now it's in alpha status yet but very soon it will be published.
  • We've a new guy as Committer of Roma: Marco De Stefano. Welcome aboard!
  • New Semantic Aspect. It's full working and exports all or piece of your application domain in to RDF format.
  • The community is developing 2 new wizards for Roma: upgrade and update. The first one will upgrade your Roma installation with the latest one (or only the modules you want). The second one will update a Roma project with the new module. Each module will work for the transparent migration between releases. Planned for the end of October 2008.
  • Realm support. Now you can deploy a single Web Application but supporting multiple realms as separate environment, each one with own users, profiles, etc.

Friday, June 27, 2008

Tevere Flow project


Finally I decided to create the Tevere Flow project starting from the Tevere Workflow module of Roma Meta Framework. In the next days I'll move the sources from Roma repository to the Tevere space hosted in Source Forge.

The idea is to provide a complete Open Source Workflow product with a Web User Interface. Tevere module is already used in production in several systems and it's appreciated for the easy to use and the Web front end: no other products can offer it!

The domain for Tevere Flow is: http://www.tevereflow.org. The web site will be active in few days with a web 2.0 look and feel. The project (still pending) in Source Forge is available here: https://sourceforge.net/projects/tevere.

Do you like the logo? It was created by Giordano Maestro (one of main committers of the Tevere Workflow module). On top of the hills you can see the colosseum (part of Roma Meta Framework logo) and the Tevere river in the middle of their. Tevere ("Tiber" in english) is the river that divide the Roma city in two parts. You can find a history of it on Wikipedia: http://en.wikipedia.org/wiki/Tiber

Stay tuned for the official launch!

Thursday, June 19, 2008

Lost in translation: birra Miller

Galway, Irlanda.

16 giugno 2008. Un lunedì sera. Dopo 4 ore di meeting in inglese Giovanni ci porta in un ristopub al centro di Galway. Enorme con un albero al centro! Talmente grande che quando sono uscito (la cena si era fermata a metà dello stomaco) per ritrovare la sala ho chiesto indicazioni... Non sto scherzando.

Dopo un ottimo antipasto, un paio di birre e una bistecca (ovviamente) Irlandese allungo il braccio e prendo in mano quella di Giordano seduto accanto a me. Vedo l'origine americana. Ma che ci fa una birra americana in Irlanda? Cmq girando la bottiglia vedo che c'è scritto qualcosa dietro all'etichetta:

"America's Quality Beer
CONTAINS NO ADDITIVES
OR PRESERVATIVES"

Preservati-che? Ah... in inglese deve essere la traduzione di "conservanti".

Comunque sia sono taaanto contento che in quella birra non c'erano preservativi ;-)
.

Wednesday, June 18, 2008

Last day of Ireland


Around Galway city on the West Coast of Ireland. This picture was shooted by Luigi.

The meeting is finished and this evening the Romulus staff had the dinner in a restaurant very close to the sea. Excellent Oysters! It's quite cold to be June and sometimes it rainings, but the colors of the sea are wonderful. Don't you?

Tomorrow I'll go back in Italy! Bye bye Ireland. See you soon.