在 Pentaho 中打开转换任务(从 XML 文件读取对象时出错)

Opening a transformation task in Pentaho (Error reading object from XML file)

我在Pentaho spoon中构建了一个转换任务,然后将其保存为.ktr文件

但是打开时出现错误,错误信息如下。

更具体地说,当任务包含 "Hadoop file output" 步骤时会发生此错误,并且仅在 Ununtu 上发生。 Mac 上的任务运行良好。

有没有人遇到过这个问题并解决过?

错误信息:

Error reading object from XML file

Unable to load step info from XML step nodeorg.pentaho.di.core.exception.KettleXMLException: 
Unable to load step info from XML
at org.pentaho.commons.launcher.Launcher.main (Launcher.java:92)
at java.lang.reflect.Method.invoke (Method.java:606)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
 at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java:-2)
 at org.pentaho.di.ui.spoon.Spoon.main (Spoon.java:654)
 at org.pentaho.di.ui.spoon.Spoon.start (Spoon.java:9190)
 at org.pentaho.di.ui.spoon.Spoon.waitForDispose (Spoon.java:7939)
 at org.pentaho.di.ui.spoon.Spoon.readAndDispatch (Spoon.java:1319)
 at org.eclipse.swt.widgets.Display.readAndDispatch (null:-1)
 at org.eclipse.swt.widgets.Display.runDeferredEvents (null:-1)
 at org.eclipse.swt.widgets.Widget.sendEvent (null:-1)
 at org.eclipse.swt.widgets.EventTable.sendEvent (null:-1)
 at org.eclipse.jface.action.ActionContributionItem.handleEvent (ActionContributionItem.java:402)
 at org.eclipse.jface.action.ActionContributionItem.access (ActionContributionItem.java:490)
 at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:545)
 at org.eclipse.jface.action.Action.runWithEvent (Action.java:498)
 at org.pentaho.ui.xul.jface.tags.JfaceMenuitem.run (JfaceMenuitem.java:106)
 at org.pentaho.ui.xul.jface.tags.JfaceMenuitem.access0 (JfaceMenuitem.java:43)
 at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke (AbstractXulComponent.java:141)
 at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke (AbstractXulComponent.java:157)
 at org.pentaho.ui.xul.impl.AbstractXulDomContainer.invoke (AbstractXulDomContainer.java:313)
 at java.lang.reflect.Method.invoke (Method.java:606)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
 at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java:-2)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4159)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4222)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4550)
 at org.pentaho.di.ui.spoon.TransFileListener.open (TransFileListener.java:51)
 at org.pentaho.di.trans.TransMeta.loadXML (TransMeta.java:2977)
 at org.pentaho.di.trans.step.StepMeta.<init> (StepMeta.java:307)
 at org.pentaho.di.trans.steps.textfileoutput.TextFileOutputMeta.loadXML (TextFileOutputMeta.java:628)
 at org.pentaho.di.trans.steps.textfileoutput.TextFileOutputMeta.readData (TextFileOutputMeta.java:693)
 at org.pentaho.di.trans.steps.hadoopfileoutput.HadoopFileOutputMeta.loadSource (HadoopFileOutputMeta.java:97)


Unable to load step info from XML
 at org.pentaho.commons.launcher.Launcher.main (Launcher.java:92)
 at java.lang.reflect.Method.invoke (Method.java:606)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
 at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java:-2)
 at org.pentaho.di.ui.spoon.Spoon.main (Spoon.java:654)
 at org.pentaho.di.ui.spoon.Spoon.start (Spoon.java:9190)
 at org.pentaho.di.ui.spoon.Spoon.waitForDispose (Spoon.java:7939)
 at org.pentaho.di.ui.spoon.Spoon.readAndDispatch (Spoon.java:1319)
 at org.eclipse.swt.widgets.Display.readAndDispatch (null:-1)
 at org.eclipse.swt.widgets.Display.runDeferredEvents (null:-1)
 at org.eclipse.swt.widgets.Widget.sendEvent (null:-1)
 at org.eclipse.swt.widgets.EventTable.sendEvent (null:-1)
 at org.eclipse.jface.action.ActionContributionItem.handleEvent (ActionContributionItem.java:402)
 at org.eclipse.jface.action.ActionContributionItem.access (ActionContributionItem.java:490)
 at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:545)
 at org.eclipse.jface.action.Action.runWithEvent (Action.java:498)
 at org.pentaho.ui.xul.jface.tags.JfaceMenuitem.run (JfaceMenuitem.java:106)
 at org.pentaho.ui.xul.jface.tags.JfaceMenuitem.access0 (JfaceMenuitem.java:43)
 at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke (AbstractXulComponent.java:141)
 at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke (AbstractXulComponent.java:157)
 at org.pentaho.ui.xul.impl.AbstractXulDomContainer.invoke (AbstractXulDomContainer.java:313)
 at java.lang.reflect.Method.invoke (Method.java:606)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
 at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethodAccessorImpl.java:-2)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4159)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4222)
 at org.pentaho.di.ui.spoon.Spoon.openFile (Spoon.java:4550)
 at org.pentaho.di.ui.spoon.TransFileListener.open (TransFileListener.java:51)
 at org.pentaho.di.trans.TransMeta.loadXML (TransMeta.java:2977)
 at org.pentaho.di.trans.step.StepMeta.<init> (StepMeta.java:307)
 at org.pentaho.di.trans.steps.textfileoutput.TextFileOutputMeta.loadXML (TextFileOutputMeta.java:628)
 at org.pentaho.di.trans.steps.textfileoutput.TextFileOutputMeta.readData (TextFileOutputMeta.java:693)
 at org.pentaho.di.trans.steps.hadoopfileoutput.HadoopFileOutputMeta.loadSource (HadoopFileOutputMeta.java:97)

它可能与 this Pentaho 的 Jira 上未解决的问题有关。

尝试通过取消选中 接受来自字段的文件名 复选框来隔离问题,看看它是否解决了问题。如果确实是问题所在,则尝试寻找另一种方法将文件名传递给输入步骤,直到发布修复程序(变量的 RegExp 是一个选项)。