Kettle problem

I have installed Kettle on a Win7 system and followed the readme instructions.  I am getting the following error:

2014/09/06 22:01:08 - General - Initialising application context, using database URL: jdbc:mysql://localhost:3306/openvpms
2014/09/06 22:01:18 - org.openvpms.etl.kettle.LoaderPluginMeta - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) : Error creating bean with name 'archetypeRuleService' defined in class path resource [applicationContext.xml]: Cannot resolve reference to bean 'ruleEngine' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [org.openvpms.component.business.service.ruleengine.RuleEngine] for bean with name 'ruleEngine' defined in class path resource [applicationContext.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: org/springmodules/jsr94/core/Jsr94RuleSupport
2014/09/06 22:01:18 - CK Supplier - This transformation can be replayed with replay date: 2014/09/06 22:01:18
2014/09/06 22:01:18 - supplier org.0 - Starting...
2014/09/06 22:01:18 - SupplierMap.csv.0 - Header row skipped in file 'C:\Kettle\opv\CK_supplier.csv'
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) : Unexpected error:
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) : Cannot perform transformation. No application context specified
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) : org.pentaho.di.core.exception.KettleException:
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) : Cannot perform transformation. No application context specified
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) :
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) :     at org.openvpms.etl.kettle.LoaderPlugin.getLoader(LoaderPlugin.java:220)
2014/09/06 22:01:18 - supplier org.0 - ERROR (version 3.2.0-GA, build 10572 from 2009-05-12 08.45.26 by buildguy) :     at org.openvpms.etl.kettle.LoaderPlugin.run(LoaderPlugin.java:183)

 

The OpenVPMS system is running happily - it is a standard 1.7.1 6046 release - has my tailored stuff (practice, locations, macros, reports, species, breeds etc etc) loaded and I can happily create customers and patients.  Within Kettle, I can see into the OpenVPMS database, so the connection is OK.

Looking at the contents of <PDI_HOME>/plugins/steps/OpenVPMSLoader and comparing it to the one on my main laptop (where Kettle has run happily for a long time), I see that there is a mysql-connector-java-5.1.5.jar there whereas this is missing in my laptop [which is running kettle based on 1.7 rather than 1.7.1]

Its as though I need an applicationContext.xml file somewhere.  I tried putting it in <PDI_HOME> and <PDI_HOME>/plugins/steps/OpenVPMSLoader but no joy.

Any suggestions?

Regards, Tim G

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Kettle problem

Application context is inside the loader.jar plugin that Openvpms provides.  One thing I have done in the past is copy the openvpms dependencies into the plugin directory as well...sometimes I had issues with the version of spring that was running in Kettle 3.2 (it was older ) than the one openvpms uses.

 

 

 

Regards
 
Ben 
OpenVPMS Installer and Helper 
Ph: +61423044823 
Email: info[at]charltonit.com[dot]au

Re: Kettle problem

Ben - the application context is actually in openvpms-etl-load-1.7.1.jar - I checked that and its all correct (ie openvpms/openvpms).

I am out of ideas.  Regards, Tim G

Re: Kettle problem

Did you try using the dependencies that Openvpms has in its /lib directory and copy thos into the plugin directory under Kettles classpath

 

Regards
 
Ben 
OpenVPMS Installer and Helper 
Ph: +61423044823 
Email: info[at]charltonit.com[dot]au

Re: Kettle problem

Did you check the contents of libext/spring as per readme.txt?

 To install the OpenVPMSLoader plugin:

 1. Extract <OPENVPMS_HOME>/import/plugin/OpenVPMSLoader.zip to
    <PDI_HOME>/plugins/steps/OpenVPMSLoader
 2. Remove <PDI_HOME>/libext/spring/spring-core.jar
 3. Copy the OpenVPMS jars to libext/spring i.e.
    copy plugins/steps/OpenVPMSLoader/*.jar libext/spring/

 

Re: Kettle problem

I thought I did this Tim - but will recheck when I next get access to the system.  Regards, Tim G

Re: Kettle problem

Ahah - verified it as a 1.7.1 problem.  On my development laptop, I was running Kettle with 1.7 stuff (actually 1.7 Beta 2).  I replaced this with the 1.7.1 stuff (ie from OpenVPMSLoader.zip from the 1.7.1 package - and bingo, same problem.  Replaced with the real 1.7 stuff (not the beta) - now works.

Running comparitors over the two versions, I suspect that the problem is associated with the jsr94 rules stuff added in the 1.7.1 version of the applicationContext.xml held in openvpms-etl-load-1.7.1.jar

This needs fixing, but for my part I have a work-around - use the OpenVPMSLoader.zip from the 1.7 package rather than that from the 1.7.1 package to build the Kettle stuff.

Regards, Tim G

 

Syndicate content