Skip to main content
Announcements
SYSTEM MAINTENANCE: Thurs., Sept. 19, 1 AM ET, Platform will be unavailable for approx. 60 minutes.
cancel
Showing results for 
Search instead for 
Did you mean: 
raspati
Contributor
Contributor

Destination Server received only directory string, not file on that directory.

Hi Team,

Basically, I have a Job who generated XML and sub-job to push XML payload with tEsbConsumer.

The XML output saved in "C:\xml\data.xml" . Then, the XML will be carried to sub-Job with trunJob. Please find the following picture.

0693p00000AHZXfAAP.jpg

In the sub-Job, please find the following picture:

0693p00000AHZXpAAP.jpg

But, in the receiver server, they only get payload in string mode (they get "

C:\xml\data.xml"). I expect, they will get the XML file in that directory not the directory string.

Is there any wrong configuration on my Schema ?

Regards,

Raspati

Labels (4)
7 Replies
Anonymous
Not applicable

Hi

From your screenshot, I see you just pass the file path to child job, not the file. Try to use tFileInputXML to read the whole file as payload document, see

0693p00000AHZa5AAH.png 

Regards

Shong

raspati
Contributor
Contributor
Author

Hi @Shicong Hong​ 

 

I put tfileInputXML before tMapXML.

 

0693p00000AHZajAAH.jpg 

But, I am confuse when configure tXmlMap. If I register the payload as a document on tXMLMap, then I unable to mapping from the left side to the right side.

0693p00000AHZbXAAX.jpg 

Regards,

Raspati

raspati
Contributor
Contributor
Author

In Parent Job, then tRunjob, then Context Param, is there any way to make the values as a document ?

 

0693p00000AHawCAAT.jpg

Anonymous
Not applicable

if you don't need to do any other mapping, link tFileInputXML to tESBConsumer.

child job:

tFileInputXML --main-->tESBConsumer.

 

raspati
Contributor
Contributor
Author

In this case, the Destination Servers require the Source Server to add some of parameters such as transaction_id, transaction_date. Please see the following:

 

0693p00000AHk70AAD.jpg 

I think, I have to add payload at the end of the line.

 

Regards,

Raspati

Anonymous
Not applicable

How do transaction_id, transaction_date comes from? I think you don't need a join, read the value of these two columns and store them to context variable or global variable, on tXMLMap, get the value from global variable in the expression of field.

raspati
Contributor
Contributor
Author

Transaction_id and transaction date coming from Contexs and modified on tJavarow like the following:

 

tJavaRow:

String t_date = (context.transaction_date+" " ).replace("_"," ");

String t_id= "ABCD"+TalendDate.getDate("yyyyMMdd");

 

output_row.transaction_date = t_date;

output_row.transaction_id = t_id;

 

As you mentioned, I have store these two collums (transaction_id and transaction_date) on Context and get the value from the Contexts through tJavarow.

 

But, the problem is the destination server received only a string value of payload not a document.

 

Regards,

Raspati