DAO design pattern in a session bean ?

I have recently been challenged by a colleague with a .Net background about the way I sometimes use session beans in web applications. Indeed, I like to implement DAOs as session beans.
Some people argue that it’s best not to directly implement CRUD methods in session beans.
The main reason being that they prefer to add another level of separation. For instance :

Session bean client
Session bean
business object helper class
ORM (Hibernate)

A good example of this approach is the old implementation (EJB 2.0) of the The Java Pet Store by Sun. (API : http://java.sun.com/blueprints/code/jps131/src/).
My opinion is that this level of separation is not always necessary. And I believe using session beans as DAOs makes even more sense now that in EJB 3.x we have the Java Persistence API (entitymanager)  which already provides generic
database access methods (persist(), merge(), etc) :

Session bean client
Session bean DAO (JPA)
Entity bean

Adam Bien explains it well in this post.

Quick chat with Teodor Danciu, the founder of JasperReports

Today I went to the Solutions Linux Open source conference and met the founder of JasperReports: Teodor Danciu. He is Romanian and speaks a very good French.

I had a quick chat with him. First, I thanked him for creating that great reporting library and then I asked him if the generated Excel files are compatible with Excel 2000, being a requirement of the customer on the project i am currently working on. The answer is: check the excel libraries that are used in JasperReports (POI and iText). They are compatible with Excel 2003 for sure.

I quickly discussed with him the support of iReport/JasperReports for EJB-QL queries. And MDX queries against an SQL Server 2008 Analysis Services. It seems a fix is available in the SVN repository and will be integrated in the next release (in 2 weeks) of JasperReports (3.7.x ?)

In the end, he gave me his business card to contact him if needed.

Amazon Carousel Widget to display the books I have reviewed

I just installed this nice plugin that makes it possible to use the Amazon Carousel Widget inside WordPress posts.

Using it now to display the various books I have reviewed during the past few years.

The reviews are listed here : http://longbeach.developpez.com/

Pretty cool, isn’t it ? 🙂

I have also added it at the bottom of the page by editing the footer.php file of the current theme. The code i added in footer.php was generated by the wizard located here :


Design prototypes and more with Axure

I heard about a tool which seems to be helpful to design prototypes that help design web applications when functionalities are still not final.

You drag and drop components and generate prototypes or specifications (word), with no programming. The generated code of the prototype is HTML and JavaScript.

Continue reading