![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I have VMS version 8.2 on Itanium machine. ( I cannot post question when I enter select Other for cpu and OpenVMS version) When using the following code snippet to execute from within Java I receive an Exception message with the following error message: Error: Could not launch TESTJOB. Message is :Child creation error: error 100052. VMS error code: error 100052 import java.lang.*; public class Example1 public static void main(String args[]) { int ExitCode=0; try { Runtime r = Runtime.getRuntime(); System.out.println("Executing TESTJOB"); Process p = r.exec("@OVMS01$DKA100:[SYS0.SYSMGR.TEST]TESTJOB"); ExitCode = p.waitFor(); } catch (Exception ex) { System.out.println("Error: Could not launch TESTJOB. Error Message is :" + ex.getMessage()); } } The Answer is : For translating an error value into text, you can use the following: $ x=f$message(100052) $ show symbol x X = "%RMS-F-SYN, file specification syntax error" The format, content and structure of a condition value are documented in the OpenVMS documentation set. The structure and operation of a condition value are of central interest to all OpenVMS programmers, of course. The specification to TESTJOB is somewhat unusual, as the OpenVMS Wizard would expect to see: SYS$SYSROOT:[SYSMGR.TEST]TESTJOB rather than: OVMS01$DKA100:[SYS0.SYSMGR.TEST]TESTJOB When logical names are available, their use is prefered over use of physical device names and of explicit system-specific root directories. When logical names are not available, the OpenVMS Wizard would create the necessary logical names; the Wizard would avoid the inclusion of physical device or directory specifications in any application code. Also please look at the documentation for the Java r.exec mechanism, as it is not a direct analog for the OpenVMS RTL lib$spawn call nor the C system call; r.exec has assumptions around the filename. In particular, the r.exec specification expects a filename, and not a DCL command.
|