Monthly Archives: July 2013

Little tip to help you to test JavaEE 7 in TomEE with TomEE Maven plugin.

Since JavaEE 7 is brand new TomEE is still JavaEE 6 but you can want to add to TomEE some JavaEE 7 features either upgrading some libraries (like BVal which has a Bean Validation 1.1 branch) or replacing some implementation by another one.

Replacing the implementation is generally easy since you can add it either in your application or in the container through <libs> tag of tomee-maven-plugin BUT here you also need to replace the API (= upgrading the JavaEE 6 provided one to a JavaEE 7 one).

TomEE is coming with a bundle API jar (javaee-api) so how to do so?

Continue reading

Hessian and TomEE/OpenEJB: make remote services insanely fast!

Hessian is an old but very interesting binary protocol known for a very good compromise between compression time and size. That’s probably one of the faster usable for remote webservices.

The question in a JavaEE server is how to use it as transparently as possible? Here is the answer for OpenEJB/TomEE.

Continue reading


JAX-WS (+ WSS4J for the security) is a quite common solution used by enterprises but JAX-WS is quite slow by design (pipeline, xml serialization, depending on implementation a lot of reflection or bytecode generation in some cases…) and the question to compare it to a simpler protocol comes pretty quickly when you held both client and server sides.

This article aims to show how JAX-WS could be replaced by EJBd protocol on TomEE (>= 1.6.0 – currently in snapshot when writing these lines).

Continue reading

Configuring CXF bus in TomEE or OpenEJB standalone

Configuring the CXF bus is a common need in particular in development where we often activate the logging. The key point here is to add the LoggingFeature of CXF.

To do so in TomEE (same for OpenEJB) you can of course configure either your endpoint (webservice jaxws or jaxrs) or your application (jaxrs) to add this feature but it is done in openejb-jar.xml in the application.

Continue reading