I just committed a bunch of code to the 2.0 branches of Elk API and Elk Press. The codes is not as stable as the old code in the main branch, but it should work. As I wrote earlier, the Elk API has changed – to the better I hope. Feel free to checkout the code and give it a build.

If you use Eclipse 3.3 as your IDE and install the Subeclipse plugin, then you can create a project for the Elk API and a project for the Elk Press by checking out each one from Subversion (New > Project > SVN). You should then be able to run the Elk Press project in Eclipse’s embedded Tomcat (right-click project, Run As > Run on Server. This is great for debugging (Debug As > Debug on Server).


  • Java 5.0
  • Maven 2

How to build and deploy:

  1. Check out the elk-api project from Subversion (see http://www.cip4.org/open_source/elk/source-repository.html)
  2. Build the elk-api project: mvn package
  3. Install the elk-api JAR in your local Maven repository: mvn install
  4. Check out the elk-press project from Subversion (see http://www.cip4.org/open_source/elk/press/source-repository.html)
  5. Build the elk-press project: mvn package
  6. Deploy the elk-press project using Maven’s Jetty plugin: mvn jetty:run
  7. Start Alces and connect to http://localhost:8080/elk-press/jmf
  8. Start a Status subscription: right-click Send File… button and select 04.Status-Subscriptiong.jmf
  9. Start a QueueStatus subscription: right-click Send File… button and select 05.QueueStatus-Subscription.jmf
  10. Submit the press job that comes with Alces: right-click SubmitQueueEntry… button and selected Elk_ConventionalPrinting.jdf
  11. Elk will start printing the press job and sent Status and QueueStatus signals to Alces with status updates
  12. When the job is finished its status in the Queue will change to PendingReturn. The updated JDF is currently not returned.

You can also deploy the Elk Press in Tomcat 5.5 (or any other servlet container) by copying elk-press.war to Tomcat’s webapps directory.

My blogging doesn’t seem to be very going very well… Anyway, I though I’d give it another try and post an update on what I’m doing with the Elk Project.

I’ve create a new branch for the Elk API and for the Elk Press where I’m working on a version 2.0. Version 2.0 of the Elk API is not backwards compatible with version “1.0”. If anyone has any opinions on this, please let me know.

Here are some UML diagrams of the Elk API 2.0 so far:

  • The most important classes in the Elk API
    The main classes in the Elk API
  • The event handling framework
    The Elk API’s event framework