Webkettle HBaseOutputMeta类强制转换异常

时间:2018-09-11 13:29:06

标签: classloader classcastexception kettle

我将水壶整合到了我的Web项目中,现在大多数正常步骤都可以正常工作。当我将大数据插件导入Web项目时,遇到了问题。  我知道HbaseoutputMeta是由嵌入式karaf加载的,因此在我强制转换时,类加载器是不同的,因此存在ClassCastException。

  

java.lang.ClassCastException:   org.pentaho.big.data.kettle.plugins.hbase.output.HBaseOutputMeta可以   不投   org.pentaho.big.data.kettle.plugins.hbase.output.HBaseOutputMeta

@Component("HBaseOutput")
@Scope("prototype")
public class HbaseOutput extends AbstractStep {

@Override
public void decode(StepMetaInterface stepMetaInterface, mxCell cell, 
List<DatabaseMeta> databases,
IMetaStore metaStore) throws Exception {
ClassLoader cl = stepMetaInterface.getClass().getClassLoader();
System.out.println("class loader of StepMetaInterface :" + cl.toString());
System.out.println("current HbaseOutputMeta class loader:"
+HBaseOutputMeta.class.getClassLoader().toString());
HBaseOutputMeta hbase = (HBaseOutputMeta) stepMetaInterface;}

HBaseOutputMeta hbase = (HBaseOutputMeta) stepMetaInterface; 此行由于ClasscastException失败,如何解决此问题? 感谢您的申请。

0 个答案:

没有答案