Skip to Main Content

Integration

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Can i call unix shell script from B2B callout.

792778May 9 2013 — edited May 9 2013
Hi,

We had a requirement to invoke a unix shell script from B2B callout implemented class. Here is the code in implementation class:

public void execute(CalloutContext context,List input,List output)
throws CalloutDomainException, CalloutSystemException {
try {

CalloutMessage cmIn = (CalloutMessage)input.get(0);
FileOutputStream fos = null;
String inputFile = "/home/orasoad/digitalsign/input/test.txt";
String outputFile = "/home/orasoad/digitalsign/output/test.txt.gpg";
File outFile = new File(inputFile);
String str =cmIn.getBodyAsString();
fos = new FileOutputStream(outFile);
Writer out = new OutputStreamWriter(fos);
out.write(str);
out.close();
String shellFile = "/home/orasoad/digitalsign/dg.sh";
String cmd[] = new String[] { shellFile, inputFile, outputFile };
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(cmd);
int i = pr.waitFor();
BufferedReader br = new BufferedReader(new InputStreamReader(pr.getInputStream()));
StringBuffer sb = new StringBuffer();
String line;
while ((line = br.readLine()) != null) {
sb.append(line);
}

CalloutMessage cmOut = new CalloutMessage(sb.toString());
output.add(cmOut);

} catch (Exception e) {
throw new CalloutDomainException(e);
}
}


We were able to execute the unix shell script from standalone java class with same code. But some how it is not working as expected while invoking the B2B java callout.

Is it possible to invoke unix shell script from B2B callout?

Please give inputs.

Regards,
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 6 2013
Added on May 9 2013
1 comment
228 views