Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
EDadou1674818802
Contributor II
Contributor II

Issue deploying ESB Route to karaf with a subjob with a tAzureStorageComponent

Hi,

I have an issue deploying one of my ESB Routes to Karaf (TOS ESB v8.0.1).

So my route get a message from ActiveMQ and get the value of a XML tag wich contains data that I use to create a PDF file, then this PDF must be sent to an Azure Storage Blob (all actions related to the PDF and Azure are in a subjob).

Here is the route : 

EDadou1674818802_0-1747064630676.pngEDadou1674818802_1-1747064659448.png

And here is the subjob : 

EDadou1674818802_2-1747064908841.png

The job reads the body (the PDF content) writes it to a file and then use a tAzureStoragePut to send the file to Azure.

 

All of this works in the studio but when I try to deploy it I have this error : 

***

Suppressed: org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[584FCF6D8F38742-0000000000000001]
at org.apache.camel.CamelExecutionException.wrapCamelExecutionException(CamelExecutionException.java:45) ~[bundleFile:3.11.1]
at org.apache.camel.support.AbstractExchange.setException(AbstractExchange.java:589) ~[bundleFile:3.11.1]
at org.apache.camel.support.DefaultExchange.setException(DefaultExchange.java:27) ~[bundleFile:3.11.1]
at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:69) ~[bundleFile:3.11.1]
at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:172) ~[bundleFile:3.11.1]
at org.apache.camel.management.DefaultInstrumentationProcessor.process(DefaultInstrumentationProcessor.java:90) ~[bundleFile:3.11.1]
at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$RedeliveryTask.doRun(RedeliveryErrorHandler.java:804) [bundleFile:3.11.1]
at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$RedeliveryTask.run(RedeliveryErrorHandler.java:712) [bundleFile:3.11.1]
at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:179) [bundleFile:3.11.1.tesb1]
at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:64) [bundleFile:3.11.1.tesb1]
at org.apache.camel.processor.Pipeline.process(Pipeline.java:184) [bundleFile:3.11.1]
at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:398) [bundleFile:3.11.1.tesb1]
at org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:492) [bundleFile:3.11.1]
at org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:245) [bundleFile:3.11.1]
at org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:206) [bundleFile:3.11.1]
at org.apache.camel.support.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:190) [bundleFile:3.11.1]
at org.apache.camel.support.ScheduledPollConsumer.run(ScheduledPollConsumer.java:107) [bundleFile:3.11.1]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.NoClassDefFoundError: com/microsoft/azure/storage/StorageException
at java.lang.Class.forName0(Native Method) ~[?:?]
at java.lang.Class.forName(Class.java:315) ~[?:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tAzureStoragePut_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4837) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_5Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4614) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_2Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4419) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tFixedFlowInput_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4107) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tRouteInput_1_LoopProcess(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:10643) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.runJobInTOS(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:11362) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE$1.runSingleUseJob(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:1018) ~[bundleFile:?]
at org.talend.camel.TalendProducer.invokeTalendJob(TalendProducer.java:203) ~[bundleFile:?]
at org.talend.camel.TalendProducer.process(TalendProducer.java:122) ~[bundleFile:?]
at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:66) ~[bundleFile:3.11.1]
... 19 more
Caused by: java.lang.ClassNotFoundException: com.microsoft.azure.storage.StorageException cannot be found by interfaces.TCK001_SEND_TICKETS_MPOS_ADOBE_TCK0XX_SEND_PDF_TO_AZURE_STORAGE_1.0.0
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:511) ~[org.eclipse.osgi-3.13.300.jar:?]
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) ~[org.eclipse.osgi-3.13.300.jar:?]
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:414) ~[org.eclipse.osgi-3.13.300.jar:?]
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:153) ~[org.eclipse.osgi-3.13.300.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]
at java.lang.Class.forName0(Native Method) ~[?:?]
at java.lang.Class.forName(Class.java:315) ~[?:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tAzureStoragePut_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4837) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_5Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4614) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_2Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4419) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tFixedFlowInput_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4107) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tRouteInput_1_LoopProcess(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:10643) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.runJobInTOS(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:11362) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE$1.runSingleUseJob(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:1018) ~[bundleFile:?]
at org.talend.camel.TalendProducer.invokeTalendJob(TalendProducer.java:203) ~[bundleFile:?]
at org.talend.camel.TalendProducer.process(TalendProducer.java:122) ~[bundleFile:?]
at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:66) ~[bundleFile:3.11.1]
... 19 more
Caused by: java.lang.NoClassDefFoundError: com/microsoft/azure/storage/StorageException
at java.lang.Class.forName0(Native Method) ~[?:?]
at java.lang.Class.forName(Class.java:315) ~[?:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tAzureStoragePut_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4837) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_5Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4614) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tJava_2Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4419) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tFixedFlowInput_1Process(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:4107) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.tRouteInput_1_LoopProcess(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:10643) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE.runJobInTOS(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:11362) ~[bundleFile:?]
at interfaces.tck0xx_send_pdf_to_azure_storage_0_1.TCK0XX_SEND_PDF_TO_AZURE_STORAGE$1.runSingleUseJob(TCK0XX_SEND_PDF_TO_AZURE_STORAGE.java:1018) ~[bundleFile:?]
at org.talend.camel.TalendProducer.invokeTalendJob(TalendProducer.java:203) ~[bundleFile:?]
at org.talend.camel.TalendProducer.process(TalendProducer.java:122) ~[bundleFile:?]
at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:66) ~[bundleFile:3.11.1]
... 18 more

***

There is someone else in my that succeeded to deploy a route that does the same thing (but in v7.3.1)

I asked if there wasn't dependencies missing but he told me that he didn't add something to karaf or to his route.

Is there something I'm missing or doing wrong ?

Thanks

 

 

Labels (3)
2 Replies
Dave_Simo
Creator II
Creator II

Hello @EDadou1674818802 

I had roughly the same thing. I had a tAzureStoragePut component called from a route to push JSON files into a container, but when running it from the Runtime, I got an error, even though everything was fine in Studio. I suspect that with the installation of the new patches, the Studio isn't aligned with the Runtime version, or it's missing Azure-related features that need to be added to Karaf.

To work around this, either:

1) Open a ticket with Talend support with your tesb.log + export of your route

2) Convert your route to a job and schedule it every 5 minutes on the TMC

PS: I used solution 2) while waiting

 

Best Regards

 

EDadou1674818802
Contributor II
Contributor II
Author

Hi @Dave_Simo ,

thanks for the reply, the issue is that we use the Open Studio (v8 and the last version available) and don't have access to the support.

But in the end I found a solution, I installed AZCopy on the server with Karaf installed and modified the job to write the file and use a tSystem to execute AZCopy to send the file to Azure

EDadou1674818802_0-1747382200409.png

Best regards