自己写的main方法正常运行(表videoinfo2已创建)
public class HBaseTest { HBaseDataOperate hdo = new HBaseDataOperate();
HBaseInsert hbi = new HBaseInsert(); public static Configuration configuration; // 初始化参数
static {
configuration = HBaseConfiguration.create();
configuration.set("hbase.zookeeper.property.clientPort", "2181");
configuration.set("hbase.zookeeper.quorum", "slave1,slave2,slave3,slave4,slave5");
configuration.set("hbase.master", "master:60000");
} public static void main(String args[]) {
String tableName = "videoinfo2";
QueryAll(tableName);
// 查询 }
public static void QueryAll(String tableName) {
try {
HTable table = new HTable(configuration, tableName);
ResultScanner rs = table.getScanner(new Scan());
for (Result r : rs) {
System.out.println("获得到rowkey:" + new String(r.getRow()));
for (KeyValue keyValue : r.raw()) {
System.out.println("列:" + new String(keyValue.getFamily())
+ "====值:" + new String(keyValue.getValue()));
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}在javawebweb工程中类似的代码public class HBaseConnection { public static Configuration configuration;
private static List<String> tableList;
//初始化参数
static {
configuration = HBaseConfiguration.create();
configuration.set("hbase.zookeeper.property.clientPort", "2181");
configuration.set("hbase.zookeeper.quorum", "slave1,slave2,slave3,slave4,slave5");
configuration.set("hbase.master", "master:60000");
}
public static ResultScanner QueryByColumns(String tableName,HashMap<String, String> ColumnNameValueHashMap,List<String> ColumnNameList) {
ResultScanner rs = null;
try {
System.out.println("11111:"+tableName+":11111");
org.apache.hadoop.hbase.client.HTable table = new org.apache.hadoop.hbase.client.HTable(configuration, "videoinfo2");
List<Filter> filters = new ArrayList<Filter>();
if (ColumnNameList != null && ColumnNameList.size()> 0){
for (String ColumnName : ColumnNameList) {
String ColumnValue=ColumnNameValueHashMap.get(ColumnName);
System.out.println("ColumnName:"+ColumnName);
System.out.println("ColumnValue:"+ColumnValue);
Filter filter = new SingleColumnValueFilter(Bytes
.toBytes(ColumnName), null, CompareOp.EQUAL, Bytes
.toBytes(ColumnValue));
filters.add(filter);
}
}
FilterList filterList1 = new FilterList(filters);
Scan scan = new Scan();
scan.setFilter(filterList1);
rs = table.getScanner(scan); } catch (Exception e) {
e.printStackTrace();
}
return rs;
}
}运行失败2015-10-16 16:28:59 org.apache.catalina.core.ApplicationDispatcher invoke
严重: Servlet.service() for servlet jsp threw exception
java.lang.NoSuchMethodError: org.apache.commons.lang.ArrayUtils.addAll([Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
at org.apache.hadoop.hbase.HConstants.<clinit>(HConstants.java:717)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionKey.<clinit>(HConnectionManager.java:446)
at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:199)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:151)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:129)
at com.test.connection.HBaseConnection.QueryByColumns(HBaseConnection.java:544)
at com.test.biz.VideoListGrade.getResultScanner(VideoListGrade.java:66)
at com.test.biz.VideoListGrade.listAll(VideoListGrade.java:21)
at org.apache.jsp.sptxzsy_jsp._jspService(sptxzsy_jsp.java:283)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.test.servlet.getVideoListHbase.doGet(getVideoListHbase.java:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
2015-10-16 16:28:59 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet getVideoListHbase threw exception
java.lang.NoSuchMethodError: org.apache.commons.lang.ArrayUtils.addAll([Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
at org.apache.hadoop.hbase.HConstants.<clinit>(HConstants.java:717)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionKey.<clinit>(HConnectionManager.java:446)
at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:199)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:151)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:129)
at com.test.connection.HBaseConnection.QueryByColumns(HBaseConnection.java:544)
at com.test.biz.VideoListGrade.getResultScanner(VideoListGrade.java:66)
at com.test.biz.VideoListGrade.listAll(VideoListGrade.java:21)
at org.apache.jsp.sptxzsy_jsp._jspService(sptxzsy_jsp.java:283)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.test.servlet.getVideoListHbase.doGet(getVideoListHbase.java:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)上网查下说要么没有这个方法,要不就是有多个同名方法,有冲突。工程中确实有两个。
一个hbase.jar中
一个rt.jar的
求解决办法。
public class HBaseTest { HBaseDataOperate hdo = new HBaseDataOperate();
HBaseInsert hbi = new HBaseInsert(); public static Configuration configuration; // 初始化参数
static {
configuration = HBaseConfiguration.create();
configuration.set("hbase.zookeeper.property.clientPort", "2181");
configuration.set("hbase.zookeeper.quorum", "slave1,slave2,slave3,slave4,slave5");
configuration.set("hbase.master", "master:60000");
} public static void main(String args[]) {
String tableName = "videoinfo2";
QueryAll(tableName);
// 查询 }
public static void QueryAll(String tableName) {
try {
HTable table = new HTable(configuration, tableName);
ResultScanner rs = table.getScanner(new Scan());
for (Result r : rs) {
System.out.println("获得到rowkey:" + new String(r.getRow()));
for (KeyValue keyValue : r.raw()) {
System.out.println("列:" + new String(keyValue.getFamily())
+ "====值:" + new String(keyValue.getValue()));
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}在javawebweb工程中类似的代码public class HBaseConnection { public static Configuration configuration;
private static List<String> tableList;
//初始化参数
static {
configuration = HBaseConfiguration.create();
configuration.set("hbase.zookeeper.property.clientPort", "2181");
configuration.set("hbase.zookeeper.quorum", "slave1,slave2,slave3,slave4,slave5");
configuration.set("hbase.master", "master:60000");
}
public static ResultScanner QueryByColumns(String tableName,HashMap<String, String> ColumnNameValueHashMap,List<String> ColumnNameList) {
ResultScanner rs = null;
try {
System.out.println("11111:"+tableName+":11111");
org.apache.hadoop.hbase.client.HTable table = new org.apache.hadoop.hbase.client.HTable(configuration, "videoinfo2");
List<Filter> filters = new ArrayList<Filter>();
if (ColumnNameList != null && ColumnNameList.size()> 0){
for (String ColumnName : ColumnNameList) {
String ColumnValue=ColumnNameValueHashMap.get(ColumnName);
System.out.println("ColumnName:"+ColumnName);
System.out.println("ColumnValue:"+ColumnValue);
Filter filter = new SingleColumnValueFilter(Bytes
.toBytes(ColumnName), null, CompareOp.EQUAL, Bytes
.toBytes(ColumnValue));
filters.add(filter);
}
}
FilterList filterList1 = new FilterList(filters);
Scan scan = new Scan();
scan.setFilter(filterList1);
rs = table.getScanner(scan); } catch (Exception e) {
e.printStackTrace();
}
return rs;
}
}运行失败2015-10-16 16:28:59 org.apache.catalina.core.ApplicationDispatcher invoke
严重: Servlet.service() for servlet jsp threw exception
java.lang.NoSuchMethodError: org.apache.commons.lang.ArrayUtils.addAll([Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
at org.apache.hadoop.hbase.HConstants.<clinit>(HConstants.java:717)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionKey.<clinit>(HConnectionManager.java:446)
at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:199)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:151)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:129)
at com.test.connection.HBaseConnection.QueryByColumns(HBaseConnection.java:544)
at com.test.biz.VideoListGrade.getResultScanner(VideoListGrade.java:66)
at com.test.biz.VideoListGrade.listAll(VideoListGrade.java:21)
at org.apache.jsp.sptxzsy_jsp._jspService(sptxzsy_jsp.java:283)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.test.servlet.getVideoListHbase.doGet(getVideoListHbase.java:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
2015-10-16 16:28:59 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet getVideoListHbase threw exception
java.lang.NoSuchMethodError: org.apache.commons.lang.ArrayUtils.addAll([Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
at org.apache.hadoop.hbase.HConstants.<clinit>(HConstants.java:717)
at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionKey.<clinit>(HConnectionManager.java:446)
at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:199)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:151)
at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:129)
at com.test.connection.HBaseConnection.QueryByColumns(HBaseConnection.java:544)
at com.test.biz.VideoListGrade.getResultScanner(VideoListGrade.java:66)
at com.test.biz.VideoListGrade.listAll(VideoListGrade.java:21)
at org.apache.jsp.sptxzsy_jsp._jspService(sptxzsy_jsp.java:283)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.test.servlet.getVideoListHbase.doGet(getVideoListHbase.java:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)上网查下说要么没有这个方法,要不就是有多个同名方法,有冲突。工程中确实有两个。
一个hbase.jar中
一个rt.jar的
求解决办法。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货