Running SpreadsheetDataReader from Java program

Discussion on developing CloverETL engine, transformation components etc.

alarned
Posts: 1
Joined: Thu Apr 30, 2015 4:51 pm

Running SpreadsheetDataReader from Java program

Postby alarned » Thu Apr 30, 2015 4:59 pm

I'm trying to run a graph that starts with a SpreadsheetDataReader input from my Java program. When I run the graph from the CloverETL Designer in Eclipse everything works perfectly, but when I execute the graph from my program, I get:

Code: Select all

java.lang.ClassNotFoundException: SPREADSHEET_READER


I saw an indication that the spreadsheet transformations in CloverETL Designer 4.0.4 is run by a CloverETL Runtime, and I'm assuming something related to that is the problem.

Am I supposed to execute my graph inside a separate CloverETL Runtime somehow? If so, how do I do that?

The full stack trace is here:

Code: Select all

INFO  [main] - Checking graph configuration...
org.jetel.exception.XMLConfigurationException
   at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:1241)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiatePhases(TransformationGraphXMLReaderWriter.java:630)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:493)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.read(TransformationGraphXMLReaderWriter.java:387)
   at org.chpl.etl.EtlGraph.setGraph(EtlGraph.java:51)
   at org.chpl.etl.App.main(App.java:13)
Caused by: org.jetel.exception.XMLConfigurationException
   at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:1241)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.throwXMLConfigurationException(TransformationGraphXMLReaderWriter.java:1236)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateNodes(TransformationGraphXMLReaderWriter.java:683)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiatePhases(TransformationGraphXMLReaderWriter.java:624)
   ... 4 more
Caused by: java.lang.RuntimeException: Unknown component: SPREADSHEET_READER class: SPREADSHEET_READER
   at org.jetel.component.ComponentFactory.getComponentClass(ComponentFactory.java:116)
   at org.jetel.component.ComponentFactory.createComponent(ComponentFactory.java:150)
   at org.jetel.graph.TransformationGraphXMLReaderWriter.instantiateNodes(TransformationGraphXMLReaderWriter.java:668)
   ... 5 more
Caused by: java.lang.ClassNotFoundException: SPREADSHEET_READER
   at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
   at java.lang.Class.forName0(Native Method)
   at java.lang.Class.forName(Class.java:264)
   at org.jetel.component.ComponentFactory.getComponentClass(ComponentFactory.java:106)
   ... 7 more
INFO  [main] - Graph configuration is valid.

kubosj
Posts: 372
Joined: Thu Jan 12, 2012 9:10 am

Re: Running SpreadsheetDataReader from Java program

Postby kubosj » Mon May 04, 2015 10:35 am

Hi alarned,

CloverETL Designer (both trial and commercial) contains 2 kinds of components. Part are open source components and part are commercial components. So you can design graphs containing both types.

But if you instantiate open source CloverETL Engine you have access only to open source components. That is why Engine complains - SpreadsheetReader is commercial component.

As workaround you can use XLSDataReader component which is available also in Engine. Unfortunately it is already deprecated component and will be for abandoned one day. If you want to see it in component palette of Designer, please enable it in Window->Preferences->CloverETL->Components in Palette->Deprecated.

If you want to use all components for transformation outside Designer you can purchase CloverETL Server.

I hope this helps.
Jaroslav Kubos
CloverCARE Support
CloverETL | Rapid Data Integration

Visit us online at http://www.cloveretl.com


cron