在远程HBase上使用Camel扫描表
我首先知道这个问题是假的,但我找不到一个关于文档的答案。让Apache camel扫描远程HBase上的表的方法是什么 阿帕奇骆驼的帮助不大。它仅在本地安装了hbase时才起作用 提前谢谢 编辑: 我尝试了@cexbrayat的例子,但得到了以下异常在远程HBase上使用Camel扫描表,hbase,apache-camel,Hbase,Apache Camel,我首先知道这个问题是假的,但我找不到一个关于文档的答案。让Apache camel扫描远程HBase上的表的方法是什么 阿帕奇骆驼的帮助不大。它仅在本地安装了hbase时才起作用 提前谢谢 编辑: 我尝试了@cexbrayat的例子,但得到了以下异常 8071 [Camel (camel-1) thread #1 - stream://in] ERROR org.apache.camel.processor.DefaultErrorHandler - Failed delivery for (M
8071 [Camel (camel-1) thread #1 - stream://in] ERROR org.apache.camel.processor.DefaultErrorHandler - Failed delivery for (MessageId: ID-1344429030688-0-1 on ExchangeId: ID-1344429030688-0-2). Exhausted after delivery attempt: 1 caught: java.lang.NullPointerException
java.lang.NullPointerException
at org.apache.camel.component.hbase.HBaseProducer.process(HBaseProducer.java:105)
at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:120)
at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:292)
at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:115)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
at org.apache.camel.component.stream.StreamConsumer.processLine(StreamConsumer.java:198)
at org.apache.camel.component.stream.StreamConsumer.readFromStream(StreamConsumer.java:159)
at org.apache.camel.component.stream.StreamConsumer.run(StreamConsumer.java:100)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
您必须在xml文件中将hbase配置为hbase-site.xml。您将在官方hbase上了解如何使用 然后您将能够在Camel中使用此配置文件:为此,您将在Camel hbase组件中找到一个示例 使用java DSL,路由将如下所示:
public class FournisseurRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
from("direct:scan")
.to("hbase:mytable?operation=CamelHBaseScan")
.log("${body}");
}
}
您必须在xml文件中将hbase配置为hbase-site.xml。您将在官方hbase上了解如何使用 然后您将能够在Camel中使用此配置文件:为此,您将在Camel hbase组件中找到一个示例 使用java DSL,路由将如下所示:
public class FournisseurRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
from("direct:scan")
.to("hbase:mytable?operation=CamelHBaseScan")
.log("${body}");
}
}
你能给我一个在Java DSL中使用camel hbase组件的例子吗?请在编辑我的问题时回顾一下,因为我在这个例子中遇到了一个例外。谢谢!您应该尝试调试:在process方法的HBaseProducer.java中放置一个断点,以查看出现了什么问题。您可以为我提供一个将camel hbase组件与java DSL结合使用的示例吗?请在编辑问题时查看我的问题,因为我在这个示例中遇到了一个异常。谢谢!您应该尝试调试:在process方法的HBaseProducer.java中放置一个断点,以查看出现了什么问题。