Added by Matt Casters, last edited by Matt Casters on Nov 19, 2008  (view change)

Labels:

Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.

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.

Thanks a lot for the explanation! Maybe it's very obvious but it took me a while to find the right source code packages (see point 1 of the explanation). The packages I had to check out:

svn co svn://source.pentaho.org/svnroot/pentaho/trunk
svn co svn://source.pentaho.org/svnroot/pentaho-solutions/trunk
svn co svn://source.pentaho.org/svnroot/pentaho-commons/trunk
svn co svn://source.pentaho.org/svnroot/pentaho-data/trunk
svn co svn://source.pentaho.org/svnroot/pentaho-preconfiguredinstall/trunk

Posted by Anonymous at Jan 09, 2008 13:41

If you are not willing to build the code from scratch, there is an alternative exit:

1) Download the pentaho 1.7 PCI and extract the following files from pentaho.war/WEB-INF/lib:

commons-digester-1.8.jar

 kettle-engine-3.0.jar

 ognl-2.6.9.jar

 pentaho-connections-1.7.0.24.jar

pentaho-plugin-1.7.1.jar

2) Copy your current version of open  pentaho-plugin-1.6.0.GA.jar and replace the kettle directory with the one from pentaho-plugin-1.7.1.jar

3) Copy the new version of pentaho-plugin-1.6.0.GA.jar and all the files you extracted from the 1.7 version except for the pentaho-plugin-1.7.1.jar and copy them into your pentaho.war/WEB-INF/lib

4) Restart the  server and you will be able to load kettle 3.0 transformation from Pentaho ...

I had a problem adding custom plugins because pentaho dont seem to find the jar file anywhere even if you specify it in the kettle-plugins.xml file. So for adding custom plugins I added them directly in the kettle-engine-3.0.jar. To do so it is necessary to add the step to the kettle-stesp.xml and copy the classes inside the kettle-engine.3.jar

Regards 

Posted by Alvaro Munoz at Nov 24, 2008 04:27 Updated by Alvaro Munoz