Running Kettle 3 on the Pentaho platform

Problem setting

Version 1.6.0 of the Pentaho Platform and the PCI (Pre-Configured Installation) went GA before Pentaho Data Integration and shipped with a version 2.5.1 of PDI.

That means that if you want to run your 3.0 transformations on the platform, you need to upgrade the KettleComponent to make use of the new 3.0 API.

The next version of the Pentaho platform has an updated KettleComponent for version 3.0 to work with.

Compiling the new KettleComponent

To modify the Pentaho platform source code to run PDI version 3 transformations and jobs, follow these steps:

  • Get the source code for the Pentaho platform version 1.6.0
  • Put the new Kettle jar files into directory third-party/lib/  (from PDI directory lib/ )
    • kettle-engine-3.0.jar
    • kettle-ui-swt-3.0.jar
  • add jar file ognl.jar to third-party/lib as well  (from PDI directory libext/ )
  • If you want to run the webservices step in (3.0.1) then add jar file wstx-asl-3.2.0.jar to third-party/lib as well  (from PDI directory libext/webservices )
  • modify the source code (org.pentaho.plugin.kettle) of the KettleComponent with these Java classes:
  • upgrade the jar file
    • third-party/lib/apache/commons-digester-1.7.jar
    • to the one found in PDI : libext/commons/commons-digester-1.8.jar
  • Modify the Pentaho build file (build.xml) to produce and handle Java5 code.
    • change the "javac" targets from
      • source="1.4" target="1.4"
    • to:
      • source="1.5" target="1.5" 

That should allow you to build the Pentaho platform and run the latest Kettle transformations and jobs on it.