[resolved] tRestRequest - parameters are not passed
Hello,
I have a Talend Job that begins with a tRestRequest component. I am having problems with the parameters because they cannot be set, meaning 0 rows are sent to it whenever I try to run it (image1). The job has multiple contexts (image2) and when I tried testing it on a default-context job with only the beginning context (image3), it was able to pass the parameters (image4). Is there something I am missing? I am testing the Rest with Postman and Google Chrome if that helps.
Please see screenshots below.
image1 - original job with 0 parameters row passed when tested
image2 - original job contexts
image3 - test job with 1 parameter row passed when tested
image4 - test job contexts
Best Regards,
I found out that I had to remove the tOracleConnection in the tPreJob, removing the whole prejob chain completely. Each tOracle component had to make its own connection. Now the job works.
Thanks so much for your help, your mentioning of the oracle connection led me to try making the components connect themselves.
This is a bit tricky without actually having the service here, so sorry about not having a definite answer. This is the sort of problem where I would have to hack around trying a few things.
I'm now thinking that this could be connected to the connection connected to the tPreJob. Can you try and configure the tOracleSP component to have its own connection? By that I mean, remove the connection component and allow the tOracleSP to connect itself.
The reason I think this is that the connection component's connection is stored in a globalMap variable. I believe the tRestRequest component creates another globalMap for each service request. This allows concurrent requests to be processed individually without overlap. I *think* that what is happening is that the connection is being cleared and since it is not created for every service call, when you get the first call it is wiped and the tOracleSP cannot make a connection.
This might be completely wrong, but it is worth trying. As I said in an earlier post, tPreJob and tPostJob components are really meant for batch jobs rather than services.
Edit: After posting this, I noticed you had come to the same conclusion. Note to self, refresh pages before responding to the last message, d'oh!! Glad you sorted it.
I was a bit confused when I started reading your reply, glad I saw that "Edit:" section afterwards. Yep I got it sorted out, thanks for all the help and it was a good idea to have tried the individual connections instead of a prejob connection.