Java 向Hbase表插入数据异常org.apache.hadoop.hbase.client.HTablePool$PooledHTable cannot be cast to org.apache.client.HTable

出错代码如下:     

//1.create HTablePool
HTablePool hp=new HTablePool(con, 1000);
//2.get HTable from HTablepool  
HTable ht=(HTable)hp.getTable(tName);

出错原因,主要是版本更新了,所以旧的调用方式会报错:如今应用的api版本中pool.getTable返回的类型是HTableInterface ,无法强转为HTable

解决方法:跳过转换为中间变量,直接调用

//ht.put(put); 换成 
hp.getTable(tName).put(put);

 

  

posted on 2015-04-13 14:19  babyblue  阅读(1311)  评论(0编辑  收藏  举报