Error deploying OSGI Bundle for ESB in Karaf

Five Stars

Error deploying OSGI Bundle for ESB in Karaf

Hello,

I have this project in Talend ESB:

1 main JOB Exposing tRESTfull method gathering parameter and passign to n°3 subjob

3 subjob executing task based on parameters.

 

Everything works ok in Talend Studio, but when I try to export main JOB (1) as OSGI Bundle for Karaf, I receive following error:

 Exception in component tRunJob_1 (Karaf_global_service)
java.lang.RuntimeException: Child job returns 1. It doesn't terminate normally.
Error: Could not find or load main class local_project.esb_fb_post_0_1.ESB_fb_post

This is the main JOB configuration:

main_job.JPG

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Any idea/suggestion? How can I manually add subjob?

 

Thx

Regs

 


Accepted Solutions
Community Manager

Re: Error deploying OSGI Bundle for ESB in Karaf

You can use RunIf links within your service OR you can make use of multiple REST API Mappings in your tRESTRequest component (...assuming that is what you are using). The second solution is probably better since you can create different URI Patterns for each requirement. You would then link to different tRunJobs which are hardcoded to run 1 job instead of being dynamic.


All Replies
Community Manager

Re: Error deploying OSGI Bundle for ESB in Karaf

Unfortunately the Dynamic Job functionality is not supported in the Runtime. This is annoying, but there are workarounds. Are you using the Enterprise Edition or the Open Source Edition? If you are using the Enterprise Edition you can configure your webservice to call the TAC's metaservlet API and start your required jobs in the TAC remotely. This is nice because it makes it even more dynamic. Alternatively (if you are using the Open Source Edition), you can set up your subjobs as web services as well. Then call them from your main service. You could also just add conditional logic within your web service and have multiple tRunJobs.

Five Stars

Re: Error deploying OSGI Bundle for ESB in Karaf

Hi, thx for your post.

I do confirm you I'm using OpenSource Edition.

Can you please gimme some little hints related to your suggestion "add conditional logic within your web service and have multiple tRunJobs"?

Do you mean turn each subjob as indipendent webservice, or embedd to the main webservice job all the subjobs?

Is there a simple way to add a conditional logic route detecting a variable from main webservice (like the setting for the Dynamic Job).

 

Thanks again for your help, really appreciated.

Cheers

S.

 

Community Manager

Re: Error deploying OSGI Bundle for ESB in Karaf

You can use RunIf links within your service OR you can make use of multiple REST API Mappings in your tRESTRequest component (...assuming that is what you are using). The second solution is probably better since you can create different URI Patterns for each requirement. You would then link to different tRunJobs which are hardcoded to run 1 job instead of being dynamic.

2019 GARNER MAGIC QUADRANT FOR DATA INTEGRATION TOOL

Talend named a Leader.

Get your copy

OPEN STUDIO FOR DATA INTEGRATION

Kickstart your first data integration and ETL projects.

Download now

What’s New for Talend Summer ’19

Watch the recorded webinar!

Watch Now

Talend API Designer – Technical Overview

Take a look at this technical overview video of Talend API Designer

Watch Now

Getting Started with APIs

Find out how to get started with APIs

Read