JavaOne 2011 – Monday Keynote

Posted in: Enterprise Java

JavaOne 2011 got off to a bit of a shaky start this morning with there being a lack of seating in the Grand Ballroom of the Hilton, leading to the escalators eventually being blocked by physically meek, yet surly, security guards and having people being redirected to smaller rooms somewhere else in the rabbit warren that is the Hilton’s conference and event space. However that didn’t happen until after a couple hundred poor souls were left standing at the back of the room to endure a 2 hour-long dry and technical keynote.

Then Mark Reinhold went missing. Not sure what happened there but awkwardly is name was announced and someone else took the stage with no real explanation about why. He then went on to introduce Doug Fisher, VP Intel, who was supposed to be the 2nd half of the keynote. The Intel guys and their Oracle counterparts presented myriad of numbers and graphs to prove that Java runs well on the Intel architecture. Not really sure anyone needed a lot of convincing of that, but their results were impressive nonetheless.

Continue reading »

Deploying 3rd Party Libraries to Adobe Communique

Posted in: Enterprise Java, Software Development Best Practices

I just published a new Blueprint over on cqblueprints.com that details how to easily deploy 3rd party libraries into your CQ environment, even when those libraries do not contain the necessary OSGi entries in the Manifest file.

CQ is built on top of Apache Sling, and Apache Sling is built on top of an OSGi container (Apache Felix specifically).

OSGi containers behave slightly differently (in terms of how classes are loaded and made available on the classpath) than most Java developers are used to.

To be able to make classes available within the OSGi container, Jar files need to be packaged in a specific way, including adding extra meta-data to the standard MANIFEST.MF file. The problem this can create is that libraries created by other developers that have not been built with OSGi in mind are missing this extra information and so their Jar files cannot be deployed in CQ.

This Blueprint details how to easily and reliably expose non-OSGi enabled libraries in CQ.

See Deploying 3rd Party Libraries

Building and Deploying OSGi Bundles on Adobe Communique

Posted in: Enterprise Java

I just published a new Blueprint over on cqblueprints.com that details how to easily build and deploy OSGi bundles into your Adobe Communique server.

CQ is built on top of an OSGi container and as a result custom code and functionality can be added to CQ through the features provided by OSGi. To be able to deploy custom code into an OSGi container, developers must package their code as a bundle. An OSGi bundle is simply a Jar file that has had extra meta data added to it. This Blueprint details how to create an OSGi bundle using Apache Maven and how to deploy that bundle into a running CQ instance.

See Building and Deploying OSGi Bundles