A fix is available
APAR status
Closed as new function.
Error description
Improvements to the cjbuild utility -- The so-called "methods file" is no longer required if you just want to build all java interop artifcats in the indicated COBOL artifact directory into a DLL -- New option --jar for creating a .jar file from all .class files generated by cjbuild for various Java class New sample files for a COBOL-calls-Java scenario
Local fix
N/A
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.4 building * * non-OO COBOL/Java interoperable * * applications who would like one or more of * * the following: * * * * 1. A way to have the cjbuild utility create * * a .jar file from all the .class files it * * generates. * * * * 2. A simplified interface to cjbuild that * * doesn't require users to specify a * * "methods" file identifying all the COBOL * * programs and Java method names involved in * * the interoperable application. * * * * 3. For users who still want to use a * * "methods" file for cjbuild to filter the * * stub files in the COBOL artifact directory, * * a way to avoid including the name of each * * Java method called from COBOL in the file. * * * * 4. A way for cjbuild to filter the stubs in * * the specified COBOL artifact directory * * (similar to the "methods" file approach) * * but by specifying the COBOL program names * * from the cjbuild command line instead of a * * file. * **************************************************************** * PROBLEM DESCRIPTION: New Function: * * 1. A new option -r/--jar has been * * added to cjbuild that results in all * * .class files produced by cjbuild being * * built into a .jar file. Note that * * cjbuild produces .class files when it * * compiles the Java files for the * * progs.java and strg.java classes as * * well as the files for accessor classes * * generated as the result of * * JAVA-SHAREABLE being used. * * * * 2. cjbuild no longer requires a * * "methods" file as input. The methods * * file is now optional. When it is * * omitted, cjbuild will process all stub * * files in the COBOL artifact directory * * indicated by the -c/--coboldir option. * * To take advantage of this, simply put * * all stub files for each interoperable * * application in a single directory. * * * * 3. If you want to continue to use the * * "methods" file approach to filter out * * stub files in the COBOL artifact * * directory, it is no longer necessary * * to include the name of each Java * * method called from COBOL. Instead, * * just include the names of all the * * COBOL programs in your application * * that make calls to Java. * * * * 4. A new cjbuild command line option * * -i/--progid has been added that allows * * users to specify COBOL progam names to * * filter on instead of filtering via the * * methods file. * **************************************************************** * RECOMMENDATION: Apply the IBM-provided PTF * **************************************************************** 1. Users wanted a way to tell cjbuild to build all .class files it produces into a single .jar file for convenience. 2. Users who prefer to maintain one directory of stub files per COBOL/Java interoperable application they build, wanted a way to simply tell cjbuild to look at that directory of stub files and build them all into a DLL -- no filtering via a "methods" file needed. 3. Listing the names of all Java methods called from COBOL in the "methods" file was unnecessarily cumbersome. 4. For users who still like the "methods" file approach with filtering, some users wanted a way to control the filtering via the cjbuild command line instead of a file.
Problem conclusion
Temporary fix
Comments
The compiler was updated as follows: 1. A new option -r/--jar was added to cjbuild to allow the user to request that all .class files generated by cjbuild be combined into a single .jar file. 2. cjbuild no longer requires a "methods" file as input, though it is still supported. 3. It is now no longer necessary to add the names of each Java method called from COBOL in the "methods" file. Instead, just list the names of all COBOL programs that make calls to Java methods. 4. A new option -i/--progid was added to cjbuild to allow users to specify COBOL program names from the cjbuild command line instead of via the methods file. For a description of changes related to the cjbuild improvements, please refer to the following sections in the Enterprise COBOL for z/OS 6.4 IBM Documentation online: 1. Programming Guide -> Compiling and debugging your program -> Compiling, linking, and running non-OO applications that interoperate with Java 2. Programming Guide -> COBOL/Java interoperability outside of the object-oriented (OO) COBOL framework
APAR Information
APAR number
PH61700
Reported component name
ENT COBOL FOR Z
Reported component ID
5655EC600
Reported release
640
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2024-06-05
Closed date
2024-06-21
Last modified date
2024-07-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
IGY8RWTU IGYCASMB IGYCCBE IGYCCCRT IGYCCICS IGYCCSRV IGYCDGEN IGYCDIAG IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4 IGYCEN$5 IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT IGYCJA$0 IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8 IGYCJA$D IGYCJA$R IGYCJBLD IGYCJDM1 IGYCJDM2 IGYCJDM3 IGYCJDM4 IGYCJDM5 IGYCJDM6 IGYCJDMB IGYCJDMJ IGYCJDMR IGYCJDN1 IGYCJDN2 IGYCJDN3 IGYCJDNB IGYCJDNJ IGYCJDNR IGYCJGEN IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOSCN IGYCPGEN IGYCRCTL IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT IGYCSCAN IGYCSIMD IGYCUE$0 IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5 IGYCUE$8 IGYCUE$D IGYCUE$R IGYCXREF IGYDRV IGYEQCWI IGYMSGE IGYMSGK IGYMSGT IGYQCBE IGYQSPLT IGYZQEN6 IGYZQENU IGYZQJP6 IGYZQJPN
Fix information
Fixed component name
ENT COBOL FOR Z
Fixed component ID
5655EC600
Applicable component levels
R640 PSY UI97420
UP24/06/27 P F406
R641 PSY UI97421
UP24/06/27 P F406
R642 PSY UI97422
UP24/06/27 P F406
R64H PSY UI97423
UP24/06/27 P F406
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"640","Line of Business":{"code":"LOB70","label":"Z TPS"}}]
Document Information
Modified date:
02 July 2024