mswiderski opened a new issue #1851:
URL: https://github.com/apache/camel-quarkus/issues/1851


   When using `camel-quarkus-smallrye-reactive-messaging` to simply receive 
messages when new files show up in a folder I get 
   
   
   ````
   2020-09-27 15:29:40,433 ERROR [org.apa.cam.pro.err.DefaultErrorHandler] 
(Camel (camel-1) thread #0 - file:///tmp/orders/) Failed delivery for 
(MessageId: 762AE8F6A4E12DF-0000000000000002 on ExchangeId: 
762AE8F6A4E12DF-0000000000000002). Exhausted after delivery attempt: 1 caught: 
java.lang.IllegalStateException: The stream has no active subscriptions
   
   Message History (complete message history is disabled)
   
---------------------------------------------------------------------------------------------------------------------------------------
   RouteId              ProcessorId          Processor                          
                                              Elapsed (ms)
   [route1            ] [route1            ] 
[from[file:///tmp/orders/?charset=utf-8&delete=true]                           
] [         1]
        ...
   [route1            ] [to1               ] 
[reactive-streams:762AE8F6A4E12DF-0000000000000000                             
] [         0]
   
   Stacktrace
   
---------------------------------------------------------------------------------------------------------------------------------------
   : java.lang.IllegalStateException: The stream has no active subscriptions
        at 
org.apache.camel.component.reactive.streams.engine.CamelPublisher.publish(CamelPublisher.java:110)
        at 
org.apache.camel.component.reactive.streams.engine.DefaultCamelReactiveStreamsService.sendCamelExchange(DefaultCamelReactiveStreamsService.java:151)
        at 
org.apache.camel.component.reactive.streams.ReactiveStreamsProducer.process(ReactiveStreamsProducer.java:52)
        at 
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:169)
        at 
org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:404)
        at 
org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:148)
        at 
org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:60)
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:147)
        at 
org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:287)
        at 
org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:483)
        at 
org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:237)
        at 
org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:198)
        at 
org.apache.camel.support.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:190)
        at 
org.apache.camel.support.ScheduledPollConsumer.run(ScheduledPollConsumer.java:107)
        at 
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at 
java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
        at 
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:834)
   ````
   
   
   
   I tried Quarkus 1.7 and 1.8 with camel-quarkus-smallrye-reactive-messaging 
1.1.0 
   
   The code is really simple as it consists of following class
   
   ````
   package org.acme;
   
   import java.io.File;
   import java.util.concurrent.CompletionStage;
   
   import org.apache.camel.component.file.GenericFile;
   import org.eclipse.microprofile.reactive.messaging.Message;
   
   @javax.enterprise.context.ApplicationScoped()
   public class FilesMessageConsumer_1 {
   
       @org.eclipse.microprofile.reactive.messaging.Incoming("files")
       public CompletionStage<Void> consume(Message<GenericFile<File>> msg) {
   
           try {
               System.out.println(msg.getPayload());
               return msg.ack();
           } catch (Exception e) {
   
               return msg.nack(e);
           }
       }
   }
   ````
   
   and then `application.properties` have following
   
   ````
   mp.messaging.incoming.files.connector=smallrye-camel
   
mp.messaging.incoming.files.endpoint-uri=file:/tmp/orders/?delete=true&charset=utf-8
   ````
   
   as soon as file exists in that folder (`/tmp/orders`) it constantly throws 
above exception.
   
   Any ideas what do I miss to make this work properly?


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to