我将水壶整合到了我的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失败,如何解决此问题?
感谢您的申请。