Netflix and Cocoon steal time from blog

Two things are stealing time away from the time budget previously allocated to blogging:

1. Netflix. Having a constant supply of movies on-hand that have been on my to-be-watched list for some time is awesome, and I love that I’m getting caught up. But, the blog has suffered.

2. Integrating Documentum with Cocoon. I got my DQL Transformer working some time ago but I ran into a problem transforming the DQL query result with my stylesheet. What sucks is that I had to upgrade my DFC and all of my WDK apps because of my current project, and after that, I discovered the problem. So now I’ve got to figure out if it was the upgrade or something else.

Until now I hadn’t been able to get logging to work from my custom transformer but this problem forced me to work through that. It turned out to be a simple thing that just wasn’t documented clearly. The solution was to use the logger attribute on my transformer declaration in sitemap.xmap like this:

<map:transformer name=”dqlquery” src=”com.navigatorsystems.cocoon.dctm.transformation.XdqlTransformer” logger=”sitemap.transformer.dqlquery”>

The category declaration in logkit.xconf matches up with that like this:

<category log-level=”DEBUG” name=”sitemap.transformer.dqlquery”>
<log-target id-ref=”dqlquery”/>
  <log-target id-ref=”error”/>

The DQL Transformer works like the SQL Transformer. It receives SAX events looking for a query element. When it finds it, it executes the query against Documentum as an XDQL query (ie, the DQL query results get returned as a well-formed XML document). The XML that gets returned gets sent to the next component in the pipeline (like another transformer or a serializer).

I am now back to running on Cocoon 2.1 instead of the version that came with the Cocoon book. And I’m running it on Tomcat 4.1.