Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
® IBM Software Group Java Calling EGL You may need to find ways for your Java Classes and EJBs to call EGL resources. Here are steps and directions. © 2006 IBM Corporation OPTIONAL TOPIC – Calling EGL From Java Classes Using JavaWrappers As mentioned in the beginning of this unit, you can call EGL programs, from native (hand-coded) Java classes. To do this, you will “wrap” the EGL programs and their parameters with EGL “Java Wrappers” What are Java Wrappers? Java classes that simplify calling EGL programs from Java Your Java code works with Java types, and conversion to EGL types is performed automatically by the wrapper. Steps: 1. Create the EGL Program Code Syntax check and validate 2. Create a new build descriptor with options set for wrapping an EGL program – Set the build descriptor option: enableJavaWrapperGen = YES Create a CallLink (Linkage Option) element for the EGL called program, with: – type = remoteCall, javaWrapper = YES Assign to the JavaWrapper Build Descriptor to the new program Generate the Program 3. Create (code) the native Java Class and Save (which will generate) 4. Run the Java Class – which will call your EGL program Last update: 12/04/2007 2 1. Call an EGL Program From Java – Create the EGL Program From the \programs\ folder, under \EGLSource\ create a new EGL program named: JavaCallEGL Notes: Use this code – for the lab (see screen capture) Make the program name start with an upper-case character The generated JavaWrapper will have an upper-case character, by default The Notes contains this code (if you’re in a hurry ) Save (Ctrl/S) and make sure you have no syntax errors Last update: 12/04/2007 3 2. Call an EGL Program From Java – Create a New Build Descriptor As you did earlier in the course, create a new EGL Build Descriptor for your new program, following these detailed directions: From the Project Explorer, you will copy the existing batchBuildFile options: 1. Right-click over batchBuildFile.eglbld and select: Open With > Text Editor 2. From inside the file: Press Ctrl/A (to select all) … then Ctrl/C (to copy all selected text to the Windows buffer) 3. Close the file Next you will create a new EGL build file, and paste the copied entries into it: 4. From Project Explorer, right-click over \EGLSource\ and select: New > Other… Expand EGL and select: EGL Build File 5 From the next wizard, name the file: JavaWrapBuildDescriptor 6. Close the new build file (you need to re-open and edit it in Text Editor mode) 7. Reopen JavaWrapBuildDescriptor file using the Text Editor 8. From the ***Notes part of this slide, copy and paste the contents 9. Save your changes (Ctrl/S) and close the file Now you will assign (or associate) the new JavaWrapBuildDescriptor to the new program: 10. From Project Explorer, right-click over your new JavaCallEGLProgram Under \EGLSource\programs\ select: Properties (note this option is usually at or near the bottom of the Context Menu) 11. From EGL Default Build Descriptors, select <JavaWrapBuildDescriptor.eglbld> for both: Target system build descriptor Debug build descriptor 12. Close the Properties view 13. Generate Last update: 12/04/2007 the JavaCallEGL program 4 From the above, note the following: Standard <BuildDescriptor…> entries <ResourceAssocations…> entry, Which would be used if the program accessed an external file LinkageOptions entry (named javaWrapOption) With a single <callLink> entry For a <remoteCall…> to your EGL program With option: javaWrapper=“YES” specified 3. Call an EGL Program From Java – Create the Java Class As you did earlier in the course, create a new Java Class file, following these detailed instructions: From Project Explorer: Right-click over \Java Resources: src\egljava\ package and create a new Java Class named: Last update: 12/04/2007 InvokeEGL - Using the copy/paste code in the ***Notes 5 4. Call an EGL Program From Java – Run the Java Class From Project Explorer: Right-click over \Java Resources: src\egljava\ package\InvokeEGL.java and select : Run As > 1. Java Application Note the Console when the run completes Last update: 12/04/2007 6