Hello:

I am doing a POC using Flume (1.4) with a JMS (ActiveMQ 5.6) source. I have
used the example source configuration from the documentation:

a1.sources = r1a1.channels = c1a1.sources.r1.type =
jmsa1.sources.r1.channels = c1a1.sources.r1.initialContextFactory =
org.apache.activemq.jndi.ActiveMQInitialContextFactorya1.sources.r1.connectionFactory
= GenericConnectionFactorya1.sources.r1.providerURL =
tcp://<myipaddress>:61616a1.sources.r1.destinationName =
TESTa1.sources.r1.destinationType = QUEUE


I get the following error:

2014-02-24 12:33:05,959 (conf-file-poller-0) [ERROR -
org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:366)]
Source r1 has been removed due to an error during configuration
org.apache.flume.FlumeException: Could not lookup ConnectionFactory
        at
org.apache.flume.source.jms.JMSSource.doConfigure(JMSSource.java:222)
        at
org.apache.flume.source.BasicSourceSemantics.configure(BasicSourceSemantics.java:65)
        at
org.apache.flume.conf.Configurables.configure(Configurables.java:41)
        at
org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:331)
        at
org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:102)
        at
org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:140)
        at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
Caused by: javax.naming.NameNotFoundException: GenericConnectionFactory
        at
org.apache.activemq.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:235)
        at javax.naming.InitialContext.lookup(InitialContext.java:411)
        at
org.apache.flume.source.jms.JMSSource.doConfigure(JMSSource.java:219)
        ... 12 more

I looked at the ActiveMQ codebase, and it doesn't seem that there is a
GenericConnectionFactory. So I changed it to use
org.apache.activemq.ActiveMQConnectionFactory.
I get the same error:

2014-02-24 12:36:39,192 (conf-file-poller-0) [ERROR -
org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:366)]
Source r1 has been removed due to an error during configuration
org.apache.flume.FlumeException: Could not lookup ConnectionFactory
        at
org.apache.flume.source.jms.JMSSource.doConfigure(JMSSource.java:222)
        at
org.apache.flume.source.BasicSourceSemantics.configure(BasicSourceSemantics.java:65)
        at
org.apache.flume.conf.Configurables.configure(Configurables.java:41)
        at
org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:331)
        at
org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:102)
        at
org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:140)
        at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
        at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
Caused by: javax.naming.NameNotFoundException:
org.apache.activemq.ActiveMQConnectionFactory
        at
org.apache.activemq.jndi.ReadOnlyContext.lookup(ReadOnlyContext.java:235)
        at javax.naming.InitialContext.lookup(InitialContext.java:411)
        at
org.apache.flume.source.jms.JMSSource.doConfigure(JMSSource.java:219)
        ... 12 more

I have verified that the ActiveMQ core jar is in the path.

Any ideas or help appreciated.

Richard.

Reply via email to