Thanks very much for the help. The only problem left is that I don't quite understand dag.addstream().
I tried this RabbitMQInputOperator consumer = dag.addOperator("Consumer", RabbitMQInputOperator.class); dag.addStream("data", rabbitInput.output, out.input); but obviously this doesn't work. What I don't get is the difference between the ActiveMQ example and the RabbitMQ example. I looked over the test examples for RabbitMQ but don't seem to understand the logic behind it. Is this the correct wax to specify properties: <property> <name>dt.operator.rabbitMQIn.prop.tuple_blast</name> <value>500</value> </property> Cheers Manfred. Am 07.06.2017 um 12:03 schrieb Vikram Patil: > Yes, you would need Application.java which will be way to define a DAG > for Apex Application. > > Please have look at the code from following example to find out how to > write JMS ActiveMQ based example: > > https://github.com/DataTorrent/examples/tree/master/tutorials/jmsActiveMQ/src/main/java/com/example/jmsActiveMQ > > This is how you can instantiate RabbitMQINputOperator and to a dag. > RabbitMQInputOperator consumer = dag.addOperator("Consumer", > RabbitMQInputOperator.class); > > https://stackoverflow.com/questions/42207495/how-to-use-apache-apex-malhar-rabbitmq-operator-in-dag > > Following properties need to be specified in properties.xml > > * Properties:<br> > * <b>tuple_blast</b>: Number of tuples emitted in each burst<br> > * <b>bufferSize</b>: Size of holding buffer<br> > * <b>host</b>:the address for the consumer to connect to rabbitMQ producer<br> > * <b>exchange</b>:the exchange for the consumer to connect to rabbitMQ > producer<br> > * <b>exchangeType</b>:the exchangeType for the consumer to connect to > rabbitMQ producer<br> > * <b>routingKey</b>:the routingKey for the consumer to connect to > rabbitMQ producer<br> > * <b>queueName</b>:the queueName for the consumer to connect to > rabbitMQ producer<br> > * <br> > > Reference: > https://github.com/apache/apex-malhar/blob/master/contrib/src/main/java/com/datatorrent/contrib/rabbitmq/AbstractRabbitMQInputOperator.java > > Thanks, > Vikram > > On Wed, Jun 7, 2017 at 3:19 PM, <a...@x5h.eu> wrote: >> Hello, >> >> I compiled the whole thing but now I don't know exactly how to get it >> running in Apex. Do I need an application.java like in the tutorial? I do >> have a simple RabbitMQ queue up and running on the server. How do I consume >> the messages with Apex and write them to hdfs? >> >> Cheers, >> >> Manfred >> >> Following steps were necessary to get the RabbitMq test to compile >> >> @TimeoutException >> import java.util.concurrent.TimeoutException; >> public void setup() throws IOException,TimeoutException >> public void teardown() throws IOException,TimeoutException >> protected void runTest(final int testNum) throws IOException >> >> @Build jars >> cd apex-malhar/contrib/ >> mvn clean package -DskipTests >> >> cd apex-malhar/library/ >> mvn clean package -DskipTests >> copy packages to project directory >> >> @Link them to the project >> Add following lines to the pom.xml >> <dependency> >> <groupId>contrib</groupId> >> <artifactId>com.datatorrent.contrib.helper</artifactId> >> <version>1.0</version> >> <scope>system</scope> >> >> <systemPath>${project.basedir}/src/main/resources/malhar-contrib-3.8.0-SNAPSHOT-tests.jar</systemPath> >> </dependency> >> <dependency> >> <groupId>lib</groupId> >> <artifactId>com.datatorrent.lib.helper</artifactId> >> <version>1.0</version> >> <scope>system</scope> >> >> <systemPath>${project.basedir}/src/main/resources/malhar-library-3.8.0-SNAPSHOT-tests.jar</systemPath> >> </dependency> >> <dependency> >> <groupId>contrib</groupId> >> <artifactId>com.datatorrent.contrib.rabbitmq</artifactId> >> <version>1.0</version> >> <scope>system</scope> >> >> <systemPath>${project.basedir}/src/main/resources/malhar-contrib-3.8.0-SNAPSHOT.jar</systemPath> >> </dependency> >> <dependency> >> <groupId>Attribute</groupId> >> <artifactId>com.datatorrent.api.Attribute.AttributeMap</artifactId> >> <version>1.0</version> >> <scope>system</scope> >> >> <systemPath>${project.basedir}/src/main/resources/apex-api-3.7.0-SNAPSHOT.jar</systemPath> >> </dependency> >> >> >> Am 31.05.2017 um 18:57 schrieb Sanjay Pujare: >> >> Both com.datatorrent.contrib.helper and com.datatorrent.lib.helper are >> under the test directory under malhar-contrib and malhar-library >> respectively. You may need to build these jars yourself with test scope to >> include these packages. >> >> On Wed, May 31, 2017 at 9:39 AM, <a...@x5h.eu> wrote: >>> Hello, (mea culpa for messing up the headline the first time) >>> >>> I'm currently trying to get the apex-malhar rabbitmq running. But I'm at a >>> complete loss, while the examples are running fine I don't even get the >>> RabbitMQInputOperatorTest.java to run. >>> >>> First it couldn't find the rabbitmq-client which was solveable by adding >>> the dependency: >>> >>> <dependency> >>> <groupId>com.rabbitmq</groupId> >>> <artifactId>amqp-client</artifactId> >>> <version>4.1.0</version> >>> </dependency> >>> >>> But now it doesn't find the packages com.datatorrent.contrib.helper and >>> com.datatorrent.lib.helper and can't find several symbols. >>> >>> Needless to say that I'm a beginner regarding Apex so does anyone know >>> what exactly I'm doing wrong here? >>> >>> Cheers >>> >>> Manfred. >>> >>> >>