Posts tagged 'jpa'



Roller 5 and Glassfish 3

Duke and GlassFishIn my quest to make Roller work on Java EE 6, the first server that I decided to tackle was Glassfish 3. In this blog I'll describe how I approached the problem and what I learned along the way.

Tested with EclipseLink JPA

Roller uses JPA for persistence and specifically the Apache OpenJPA implementation. I knew that GlassFish uses the EclipseLink JPA implementation and I suspected that there would be JPA portability problems, so I decided to run Roller's JUnit tests against EclipseLink JPA. I wanted to find and fix those problems before even touching GlassFish. The tests ran and there were many JPA related failures and errors, most due to differences in the way that EclipseLink handles bi-directional relationships and the use of unmanaged objects.

[Read More]

Apache Roller 5.0 RC3

On the last day of 2010, I made available the third release candidate for Apache Roller 5.0. The main difference between this new candidate and the previous one is that the new RC3 runs on Java EE 6 servers: Glassfish 3, JBoss 6 and Websphere 8 (currently in beta). Making this happen took a lot more work than I expected and I'll blog about that over the next couple of weeks as it is an interesting case study in Java EE 6 portability.

Here's the announcement:

Apache Roller 5.0 Release Candidate RC3 is now available for testing.
Note that this is NOT a release of the Apache Software Foundation or
anybody else; this release candidate is for testing purposes only and
not recommended for production.

   What's new in Roller 5.0:
   https://cwiki.apache.org/confluence/display/ROLLER/What's+new+in+Roller+5.0

   Change list (issues resolved since 4.0)
   http://bit.ly/gAhDWR

   Issues resolved since last release candidate (RC3)
   http://bit.ly/dZ27Nx

   Signed binary and source files. Also, documentation in PDF form
   http://people.apache.org/~snoopdave/apache-roller-5.0/

The biggest change in RC3 is the new support for Java EE 6 application
servers: Glassfish 3, JBoss 6 and Websphere 8 (beta). I've been able
to verify that Roller runs on all of those servers, and I updated the
installation guide to explain in detail how you install on Glassfish,
JBoss and WebSphere.

If you would like to help out then please test RC3, discuss the
problems you encounter here and file specific bugs with steps to
reproduce in the Roller JIRA bug tracking system.

Thanks,
Dave
That announcement is available here: http://markmail.org/message/my5wbld2xqvhqpyg

Powered by Struts2 and OpenJPA

I stayed up a little too late last night upgrading this site (rollerweblogger.org) to the latest Roller 4.0 code base, which includes the new Struts2 based Admin UI and a new OpenJPA based back-end. No more Hibernate for me. The upgrade was a bit of a rocky road, but the site seems to be working OK now.


Apache OpenJPA graduates

Congrats to the OpenJPA team.

Patrick Linksey: Last week, OpenJPA graduated from the Apache incubator, meaning that it's now a fully-fledged Apache project. We're graduating to a top-level project, so once the infrastructure administrivia gets worked out, the new URL will be http://openjpa.apache.org.

I'd like to thank Craig Russell for pushing the project through the last mile of graduation details, and our incubation mentors (Brian McAllister, Eddie O'Neil, and Geir Magnusson) for all their help transitioning into the Apache world.

I'm pushing to replace Hibernate with JPA in Roller and OpenJPA seems the most likely candidate, so I'm glad to hear the community is thriving.


IBM Roller development update and iBatis vs. JPA

Elias posted some good news about some upcoming IBM contributions to Roller. We're discussing how best to get them into Roller now.

Note that we now have two possible replacements for our old Hibernate back-end. We've got a Java Persistence Architecture (JPA) based back-end developed by Sun's Craig Russell and Mitesh Meswani and IBM is getting ready to contribute an iBatis based back-end. How do we choose which one to use in Roller? Consensus seems to be that we'll have a bake-off. We'll compare the programming models, test performance and discuss the pros and cons -- and let the best framework win.