background image

66     Chapter 5.  Adapter Class Reference 

Expansion format 

CLASS-ID. internal-class-1 AS "external-class-name" INHERITS internal-
class-name-2. 
    ... 
FACTORY. 
    ... 
  <<NEW-ARRAY method>> 
END FACTORY. 
OBJECT. 
    ... 
  <<GET-ARRAY-LENGTH method>> 
  <<GET-ARRAY-ELEMENT method>> 
  <<SET-ARRAY-ELEMENT method>> 
END OBJECT. 
END CLASS internal-class-name-1. 

Generation rules 
1.

 

Internal class names 1 and 2 are internally used by the J adapter class generator 

and are not viewed from the class user. 

2.

 

The external class name is used to identify the class.  The class user can identify 

the class with the external class name. 

3.

 

An external class name is generated according to the following rules: 

JA-NumberOfDimensions-ElementTypeName 

-

 

"JA-" is followed by the number of dimensions (1 to 9) and element type 

name with a hyphen "-" inserted in between them. 

-

 

An element type name is generated depending on the type in the following 

format: 

-

 

Object:  External class name of the adapter class corresponding to the Java 

class (See "

Class and interface.") 

-

 

Basic type:  Java keyword representing a type (boolean, byte, char, short, 

int, long, float, or double) 

-

 

An external class name exceeding 160 characters is truncated after the 

160th character. 

4.

 

The following methods are generated in the factory or method definition: 

Method name 

Type 

Function 

NEW-ARRAY 

Factory 

Generates an array object. 

GET-ARRAY-LENGTH Object  Obtains 

the 

number of elements of an array. 

GET-ARRAY-ELEMENT 

Object 

Fetches a value from an array element. 

SET-ARRAY-ELEMENT 

Object 

Sets a value in an array element. 

 
5.

 

An n-dimensional array is handled as a one-dimensional array having an n-1-

dimensional array as an element.  Therefore, for n-dimensional array, n adapter 

classes (JA-n-XYZ, JA-(n-1)-XYZ, ..., JA-1-XYZ) are generated.  JA-n-XYZ is a 

one-dimensional array having JA-(n-1)-XYZ as an element. 

Generation example 
The adapter class for java.lang.String[] is generated as shown below: 

Summary of Contents for J Adapter Class Generator

Page 1: ...J Adapter Class Generator User s Guide ...

Page 2: ...be revised without prior notice No part of this document may be reproduced or transmitted in any form or by any means electronic or mechanical for any purpose without the express written permission of Fujitsu Limited 1996 2005 Fujitsu Limited All Rights Reserved ...

Page 3: ...efer to the Fujitsu NetCOBOL User s Guide Intended Readers This manual is intended for persons who develop COBOL programs using Java classes Prerequisites Readers are required to have the following knowledge to read this manual Basic knowledge of COBOL syntax Basic knowledge of COBOL object oriented programming Basic knowledge of Java Organization of This Manual This manual consists of the followi...

Page 4: ...gram development The Appendix A describes the messages that are output form the J adapter class generator and the Appendix B describes the exception types that the J adapter class generator sets Read them as necessity requires Product Names Product Name Abbreviation Microsoft Windows 98 Operating System Windows 98 Microsoft Windows Me Operating System Windows Me Microsoft Windows NT Workstation Op...

Page 5: ... as follows Microsoft Windows and Windows NT are registered trademarks of Microsoft Corporation in the U S and other countries Java and other trademarks including Java are trademarks of Sun Microsystems Inc in the U S and other countries J Adapter Class Generator User s Guide 5 ...

Page 6: ...6 NetCOBOL J Adapter Class Generator User s Guide ...

Page 7: ...ams 17 Creating Adapter Classes 18 Developing an Application That Uses an Adapter Class 22 Running a Program 29 Conversion to Java2 30 Chapter 4 Using the Generator Command 31 Starting the J Adapter Class Generator 32 Optional File 36 Output 42 Chapter 5 Adapter Class Reference 45 Class Configuration 46 FJ JAVA BASE class 47 FJ JAVA CONTROL class 48 FJ JAVA ERROR class 50 Class or Interface Adapte...

Page 8: ...during Execution 77 Chapter 7 Samples 81 Sample 1 Using Classes 81 Sample 2 Specifying Method 83 Appendix A Message List 85 Java2cob Command Messages 86 Messages Output during Generation 87 Messages Output during Execution 90 Appendix B Exception Type List 93 Index 97 ...

Page 9: ...Chapter 1 Outline of J Adapter Class Generator This chapter explains the function and operating environment of the J adapter class generator ...

Page 10: ...OBOL The J adapter class generator provides a framework that enables COBOL to use Java classes The J adapter class generator enables a COBOL program to Use a Java class library Call a Java application Use an application program interface API provided for Java The J adapter class generator enables COBOL to be used for systems that previously could only have been implemented in Java Use of the J ada...

Page 11: ...ate a Java instance object COBOL handles it as a factory method that returns an object Accessing an instance variable Access to a public instance variable non static field of a Java instance object is enabled COBOL handles it as an object property Invoking an instance method A public instance method non static method of a Java instance object can be invoked COBOL handles it as an object method Rec...

Page 12: ...dapter class generator Fujitsu NetCOBOL or Fujitsu NetCOBOL Runtime System is required to execute applications developed by the J adapter class generator Java Development Kit or Java Runtime Environment Java Development Kit JDK is provided by Sun Microsystems Inc provides the basic general purpose class libraries required for program development with Java Java 2 SDK J2SDK is a software development...

Page 13: ...Chapter 2 Adapter Class Generator Framework This chapter explains the framework of the J adapter class generator ...

Page 14: ...as an interface converting mechanism to generate adapter classes corresponding to Java classes To use a Java class from a COBOL program the adapter class created by the generator can be called The adapter class is written in COBOL and therefore can be called in the same manner as a COBOL class The relationship between the Java class interface and adapter class is shown below Figure 2 1 Java class ...

Page 15: ...ava method of the corresponding Java instance object Only the adapter object can be seen from the COBOL program Every operation on the adapter object is transmitted to the corresponding Java object To the COBOL program the adapter object seems as if it were a Java object The adapter object since it works for the Java object is also called a proxy object The relationship between the Java object and...

Page 16: ...16 Chapter 2 Adapter Class Generator Framework ...

Page 17: ...Chapter 3 Developing Programs This chapter explains how to develop programs that use Java classes ...

Page 18: ...Generating Adapter Class Source If the target Java class and interface can be used generate adapter class source Use the java2cob command to generate adapter classes The java2cob command reads the class file extension class of the Java class interface and generates the corresponding adapter class source The java2cob command generates adapter classes of not only the class specified by the option bu...

Page 19: ...ll folder for REPIN Specify ALPHAL WORD When creating an adapter class running with Unicode specify RCS UCS2 5 To determine the compilation order select Repository File Search from the Edit menu and then select All 6 Create a library folder and store the runtime library F3BIJART LIB of the J adapter class generator in it F3BIJART LIB is available from the LIB folder of the install folder 7 Execute...

Page 20: ...tion was not found Generation was interrupted Reducing the Size of Adapter Class The adapter class source generated by the J adapter class generator may be simply compiled and linked before it is used Since however the adapter source class can include class files which are not used by the applications there might be cases where the size of the DLL file of the adapter class is significantly larger ...

Page 21: ... an object reference parameter When the om option or the Option ReduceClass parameter is specified the object reference types of method parameters excluding the return value become java lang Object and therefore the original parameter types become uncertain Therefore for a parameter whose object reference type becomes java lang Object a parameter name is generated according to the following rules ...

Page 22: ...of the object 4 Calling the method 5 In the case of a multithreaded application disconnection from the Java VM 6 Termination of the Java VM Also be careful when performing the following operations Manipulating a variable Comparing object references Assignment to a subclass Mapping java lang String into PIC X End control of character string Exception processing Initializing the Java VM To use an ad...

Page 23: ...tual machine VM When the multithread application is terminated the current thread must first be disconnected from the Java VM Use the JVM INIT method or the JVM ATTACH method of the FJ JAVA CONTROL class to connect the current thread to the Java VM To disconnect the current thread from the Java VM use the JVM TERMINATE method or the JVM DETACH method of the FJ JAVA CONTROL class A multithread appl...

Page 24: ...as that of Java However if more than one method is defined with the same name append a numeric suffix to distinguish them see Class method and Instance method An example of invoking the getTime method of the Date class is shown below REPOSITORY CLASS J Date AS java util Date WORKING STORAGE SECTION 01 anDate OBJECT REFERENCE J Date 01 currentTime PIC S9 9 COMP 5 PROCEDURE DIVISION INVOKE anDate ge...

Page 25: ...same COBOL uses the J EQUALS method of the adapter class instead of The adapter class always has the J EQUALS method An example of comparing two Date objects is shown below The condition is met when Date 1 and Date 2 point to the same Java object REPOSITORY CLASS J Date AS java util Date WORKING STORAGE SECTION 01 Date 1 OBJECT REFERENCE J Date 01 Date 2 OBJECT REFERENCE J Date 01 rst PIC 1 PROCED...

Page 26: ...led as alphanumeric items in the user s applications since the java lang String type is mapped into PIC X ANY LENGTH Return values of the java lang String type in the method Argument of the java lang String type in the constructor and method Fields class variables and instance variables of the java lang String type Example When the s option and Option String parameter are not specified the convers...

Page 27: ...tring object method is used the creation of the object calling the String constructor or calling the NEW STRING X method is necessary To refer set the java lang String type field class variable or instance variable specify its size using s option or Option String parameter When you want to handle the String type NULL object do not use the s option and Option String parameter End Control of Charact...

Page 28: ...ated in the adapter class using the exception object the exception handling needs be described in the declaratives of the procedure division of the program using the USE statement When the method of the FJ JAVA ERROR class is used in the exception handling the exception message exception type and Java exception information can be extracted For the details of the exception handling using the USE st...

Page 29: ... EXE 3 Create a COBOL source file folder and store the program source in it 4 Create a library file folder and store the adapter class LIB file and J adapter class generator runtime library F3BIJART LIB in it F3BIJART LIB exists in the LIB folder of the install folder 5 Specify compiler and link options For REPIN specify XXX REP XXX is the J adapter class generator install folder and the folder co...

Page 30: ...lass source and DLLs created by JDK 1 1 x can be used as they are in the Java2 environment If an adapter class is recreated by Java2 a method name different from one created by JDK 1 1 x may be generated see Numbering names In this case the COBOL program using the Java class must be modified To prevent this problem recreate an adapter class with Java2 by using the generation name management file g...

Page 31: ...Chapter 4 Using the Generator Command This chapter explains how to use the generator command java2cob optional file and output result ...

Page 32: ...c type indicates variable character string Options classpath class path Specifies the Java class interface search path When specifying two or more folders separate them with a semicolon When this option is specified environment variable CLASSPATH is ignored This option must be specified right after the java2cob command c s u Specifies the code used for execution Specify the same code as the COBOL ...

Page 33: ...clusive relation with the om option gm method name parameter type Specify the method name generated as an adapter class for the last class name interface name specified before this option If the method name is omitted all of the methods within the corresponding class interface are generated When specifying more than one method they must be delimited by comma or a blank When more than one method of...

Page 34: ...pectively Specify the class name interface name right after this option When specifying constructor method field for more than one class names interface name specify the r option for each class name interface name If there is no single gc option or gm option or gf option that corresponds to this option the adapter class without constructor method field is generated This option has exclusive relati...

Page 35: ...cified for the execution time code specify RCS UCS2 in a compiler option see Building an adapter class Example Using the options is described in the following examples of the java2cob command All of the adapter classes that are related to the java io PrintStream class and the java util Date class are generated c java2cob java io PrintStream java util Date The adapter class that is related to all p...

Page 36: ...lowed Option CommandOptions Specify directly options of the java2cob command Omission is allowed Multiple setting is not allowed Option GenOnlyUsed Specify whether or not to specify a constructor method field generated as an adapter class Omission is allowed Multiple setting is not allowed Option MethodTable Specify whether or not to output the method name cross reference list file Omission is all...

Page 37: ...ge name When specifying an internal class name as the parameter type specify dollar instead of period of the internal class constructor method field specifying option Specify a constructor method field using the format of gc option gm option and gf option of the java2cob command The constructor method field specifying option is valid when the Option GenOnlyUsed parameter specifies YES If construct...

Page 38: ...cified When a parameter of the same type as the command options is specified as an optional file the specified value of the command options overrides the option file Option GenOnlyUsed Specification format Option GenOnlyUsed YES NO Specification contents Specify whether or not specify a constructor method field generated as an adapter class When a constructor method field is specified size of the ...

Page 39: ...ist file is output NO The method name cross reference list file is not output Option OutPutPath Specification format Option OutPutPath output folder Specification contents Specify the folder to which source of the adapter class is output When a folder include a blank enclose the entire output target folder with double quotation If omitted it is generated in the current directory Option OverWrite S...

Page 40: ...be distinguished using the method name cross reference list file If omitted it is assumed that NO is specified Meaning of the parameter YES Reduces the number of adapter classes NO The number of adapter classes is not reduced Option String Specification format Option String YES n NO Specification contents Specify whether or not to generate an adapter class in which the java lang String type is map...

Page 41: ...hich the end character string setting is made Example When creating only an adapter class that is related to the println Object method of the java io PrintStream class or related to the Date constructor of the java util Date class specify as follows Option GenOnlyUsed YES Class java io PrintStream gm println java lang Object Class java util Date gc Date Notes When two or more parameter of the same...

Page 42: ...lso generated This processing is recursive until the following conditions are met No other classes or interfaces are referenced Adapter classes corresponding to the referenced classes or interfaces have all been generated A source file with the same name already exists in the output destination while overwriting is not specified The name of a generated source file is created from the class name or...

Page 43: ...for information on how to use the generation name management file Method Name Cross Reference List File A method name cross reference list file is output so that the operator can check the correspondence between Java class methods and adapter class methods The method name cross reference list file is generated when the oi option or the Option MethodTable parameter is specified in the adapter class...

Page 44: ...f the adapter class corresponding to the Java class java method name Java class method type Return type of Java method argument type Argument type of Java method OVERRIDE Added when a super class method is overridden cobol method name External method name of the adapter class corresponding to the Java method None Indicated when no adapter class method corresponds to the Java method No method name ...

Page 45: ...ss Reference This chapter provides detailed information on the FJ JAVA BASE FJ JAVA CONTROL and FJ JAVA ERROR classes provided by the J adapter class generator and adapter classes generated by the J adapter class generator ...

Page 46: ...pter class Class adapter class An adapter class java lang Object of the java lang Object class is generated as a subclass of FJ JAVA BASE Other adapter classes having the same inheritance relationships as Java classes are generated An adapter class of the class in which a Java interface is installed inherits an interface adapter class as well Interface adapter class The adapter class of an interfa...

Page 47: ...ter and return value class name Specifies the class name of assignment target data object 1 attribute OBJECT REFERENCE FJ JAVA BASE Specifies the object to be assigned object 2 attribute OBJECT REFERENCE SELF Returns the object that was converted into the assignment target class J DUPLICATE Method object method Explanation This method duplicates an adapter object It duplicates no Java object A dup...

Page 48: ...ing Connects the current thread to the Java VM JVM ATTACH Factory Same as JVM INIT JVM TERMINATE Factory Terminates the Java VM Only at the last calling Disconnects the current thread from the Java VM JVM DETACH Factory Disconnects the current thread from the Java VM JVM INIT Method factory method Explanation When it is called initially in a process Java VM is initialized This must be executed bef...

Page 49: ...curs when this method is invoked two or more times in one process JVM TERMINATE Method factory method Explanation The current thread is isolated from the Java VM In the multithread applications the current thread must be isolated from Java VM before the thread is terminated Also when it is called by the last thread in a process Java VM is terminated It is used when the adapter class is used no mor...

Page 50: ...eturns the exception message GET CODE Object Returns the type of exception GET EXCEPTION Object Returns the Java exception information GET MESSAGE method object method Explanation Returns the exception message It is used to indicate the error content Syntax INVOKE EXCEPTION OBJECT GET MESSAGE USING message RETURNING messageLength Parameter and return value message attribute PIC X ANY LENGTH Specif...

Page 51: ...ned when Java exception information exists 1 is returned when Java exception information does not exist Notes The Java exception information can be acquired only when the exception type is 1 Class or Interface Adapter Class A COBOL class adapter class is generated for a Java class or interface This section explains how Java class and interface elements are mapped to COBOL class elements The Java l...

Page 52: ...ata is mapped when code option cu Unicode is specified short PIC S9 4 COMP 5 int PIC S9 9 COMP 5 long PIC S9 18 COMP 5 float COMP 1 double COMP 2 Array Object reference array adapter class Object Object reference adapter class Class and interface Explanation Public classes and interface are mapped to COBOL classes The inheritance relationships of adapter classes are the same as those of the corres...

Page 53: ...ageName ClassName InterfaceName Period used in the class name or interface name fully qualified with a package name is replaced with hyphen A name exceeding 160 characters is truncated after the 160th character 4 The following three methods are generated in the FACTORY definition Factory method corresponding to a constructor Property method corresponding to a class variable Factory method correspo...

Page 54: ...1 The internal method name is internally used by the J class method generator and are not viewed from the class user 2 The external method name is used to identify the method The class user can identify the method with the external method name 3 An external method name is generated according to the following rules Create JavaClassName nn Create is followed by a Java class name with a hyphen follow...

Page 55: ...S Create Date 08 1 LINKAGE SECTION 01 CREATED OBJECT OBJECT REFERENCE SELF 01 PARA 1 PIC S9 18 COMP 5 PROCEDURE DIVISION USING PARA 1 RETURNING CREATED OBJECT END METHOD CREATE 08 2 The factory method of java sql Date is also generated with name Create Date followed by a number To prevent name duplication serial numbers including java util Date factory methods are assigned Supplement A factory met...

Page 56: ...e has already been assigned the second and subsequent property names are each suffixed with a hyphen followed by a two digit number 01 to 99 to prevent name duplication See Numbering names A name exceeding 30 characters is truncated after the 30th character 3 When FINAL is specified no property method with the SET specification is generated 4 The property value is a parameter used to transfer a pr...

Page 57: ...enerator and cannot be viewed from the class user 2 The external method name is used to identify the method The class user identifies the method with the external method name 3 An external method name is generated according to the following rules JavaMethodName nn A Java method name is used as is as a COBOL method name If a same method name has already been assigned the second and subsequent metho...

Page 58: ...he case of class browser it can be identified from the parameter that appears during method selection In the case of method name cross reference list file it can be identified from the type of argument of the constructor Instance variable Explanation A public instance variable non static field is mapped to a COBOL property method object Expansion format METHOD ID GET PROPERTY property name LINKAGE...

Page 59: ...es The property method corresponding to the instance variable nval of the java io StreamTokenizer class is generated as shown below METHOD ID GET PROPERTY JF NVAL 1 LINKAGE SECTION 01 GET VALUE COMP 2 2 PROCEDURE DIVISION RETURNING GET VALUE END METHOD JF NVAL METHOD ID SET PROPERTY JF NVAL 3 LINKAGE SECTION 01 SET VALUE COMP 2 PROCEDURE DIVISION USING SET VALUE END METHOD JF NVAL 1 The property n...

Page 60: ...nal method name 3 An external method name is generated according to the following rules JavaMethodName nn A Java method name is used as is as a COBOL method name If a same method name has already been assigned the second and subsequent method names are each suffixed with a hyphen followed by a two digit number 01 to 99 to prevent name duplication See Numbering names A name exceeding 160 characters...

Page 61: ...argument of the constructor java lang String class Like other classes the java lang String class is mapped to the java lang String class However the java lang String class has the following methods for referencing or setting character string data in addition to the methods defined in the java lang String class Method name Type Function NEW STRING X Factory Generates a String object having the spec...

Page 62: ...ERENCE J String PROCEDURE DIVISION MOVE ABC TO initialValue INVOKE J String NEW STRING X USING initialValue RETURNING aString 1 MOVE ABC X 00 TO initialValue INVOKE J String NEW STRING X USING initialValue RETURNING aString 2 1 A String object consisting of 50 characters with the last 47 character area padded with blanks is generated 2 A String object consisting of three characters is generated NE...

Page 63: ...J String NEW STRING N USING initialValue RETURNING aString 2 1 A String object consisting of 50 characters with the last 47 character area padded with blanks is generated 2 A String object consisting of three characters is generated GET STRING X method object method Explanation This method fetches the character string from the String object as an alphanumeric data item Syntax INVOKE anObject GET S...

Page 64: ...ect If the specified data item is shorter than the fetched character string it is truncated If the specified data item is longer than the fetched character string the trailing area is padded with blanks GET STRING LENGTH X method object method Explanation This method returns the length of the character string of the String object as the length number of characters of the alphanumeric data item Syn...

Page 65: ...ng length Array Adapter Class A Java array is handled as an object in COBOL Therefore an adapter class is generated for each array attribute element type and number of dimensions This section explains how Java arrays are mapped to COBOL classes Array class Explanation An adapter class corresponding to the array is generated when An array is used as a parameter of a public constructor The type of a...

Page 66: ...ending on the type in the following format Object External class name of the adapter class corresponding to the Java class See Class and interface Basic type Java keyword representing a type boolean byte char short int long float or double An external class name exceeding 160 characters is truncated after the 160th character 4 The following methods are generated in the factory or method definition...

Page 67: ...having int as an element Note No array exceeding 9 dimensions can be handled NEW ARRAY method factory method Explanation This method generates an array object Syntax INVOKE class name NEW ARRAY USING elmNum RETURNING createdObject Parameter and return value class name Specifies the internal class name of the array class declared in the REPOSITORY paragraph elmNum attribute PIC S9 9 COMP 5 Specifie...

Page 68: ...n of anArray GET ARRAY LENGTH method object method Explanation This method returns the number of elements of an array object Syntax INVOKE anObject GET ARRAY LENGTH RETURNING elmNum Parameter and return value anObject Specifies the array object from which the number of elements is obtained elmNum attribute PIC S9 9 COMP 5 Returns the number of elements of an array GET ARRAY ELEMENT method object m...

Page 69: ...methods with the same name to be defined within the same class if they have different parameters while COBOL does not permit such definition In this case methods with the same name in Java must be generated so that they correspond to different names in COBOL The J adapter class generator generates a unique name from each corresponding Java name by adding a hyphen followed by a number This section ...

Page 70: ... order from the constructor defined in the super class When two or more constructors are defined for one class the rule is applied to them in order they are defined Example The factory methods corresponding to the constructor of the java util Date class and java sql Date class subclass of the java util Date class are assigned names as shown below Java constructor COBOL factory method Date Create D...

Page 71: ...igns numbers to methods with the same name according to the following rules 1 The J adapter class generator searches the generation name management file for a method having the same name and parameter 2 If a matching method is found it uses the corresponding COBOL method name 3 If no matching method is found it generates a new COBOL method and adds it to the generation name management file 4 A COB...

Page 72: ...read 02 Note The way of assigning numbers may be different depending on the order adapter classes are generated Use the same generation name management file to generate adapter classes to be used under the same environment Supplement These naming rules also apply to class methods Java fields variables class instance are associated with COBOL property methods The same rules as those for methods als...

Page 73: ...Chapter 6 Messages This chapter explains the messages output by the J adapter class generator including the operator responses to the messages ...

Page 74: ... J adapter class generator and retry The J adapter class generator is not installed normally Reinstall the J adapter class generator Messages Output during Generation This section explains the messages output during adapter class generation including the operator responses to the messages The message format is shown below Message type Message text The message types are shown below Message type Lev...

Page 75: ...he same name then retry Alternatively retry while specifying the om option Error The status of file xxx is invalid for generation Check the file status Check the file status whether the folder name specified in the d option is valid or whether the file is write protected then retry Error An error occurred during writing to file xxx Check whether the output destination has enough free space then re...

Page 76: ... was not found Generation was interrupted Check whether there is a class interface class file referenced from the class interface see Generating an adapter class when the class file is not available Error A memory space shortage occurred Generation was interrupted Terminate unnecessary applications and retry Error A system error occurred Generation was interrupted The J adapter class generator fai...

Page 77: ...number of dimensions short S The number of indicates the number of dimensions int I The number of indicates the number of dimensions long J The number of indicates the number of dimensions float F The number of indicates the number of dimensions Array of basic data type double D The number of indicates the number of dimensions Class interface array L package name class name The number of indicates...

Page 78: ...SPATH No Java class interface is found on the search path Check whether the value of the environment variable COBJNI_CLASSPATH is valid A memory space shortage occurred Increase the values of environment variables COBJNI_MAX_NSTACK COBJNI_JAVA_STACK COBJNI_MIN_HEAP and COBJNI_MAX_HEAP then retry A memory space shortage occurred in the Java VM Increase the values of environment variables COBJNI_MAX...

Page 79: ...the array object is invalid Specify a subscript within the array range The subscript value is outside the range from 0 to element count 1 Specify a valid subscript The class of the set object is invalid Specify a subclass of the array element class An attempt was made to set an invalid class object in an array element Set an object of a valid class An object of the array element class or its subcl...

Page 80: ...80 Chapter 6 Messages ...

Page 81: ...ass and place the content on the standard output class variable out of the java lang System class Distribution files JADP01 TXT program description JAVA2COB MGT generation name management file DATEMAIN PRJ project file DATEMAIN CBI compiler option file DATEMAIN COB COBOL source program DATE01JAVA PRJ project file DATE01JAVA CBI compiler option file DATE01JAVA2 PRJ project file DATE01JAVA2 CBI comp...

Page 82: ...ate an adapter class of the java util Date class Project build or rebuild function This section explains how to create an executable program using the build function of the project manager Refer to the Fujitsu COBOL User s Guide for detailed information on how to use the project manager 1 When using Java JDK 1 1 x open project file DATE01JAVA PRJ When using Java2 J2SDK 1 2 2 or later open project ...

Page 83: ...tructor method field name used by the program Distribution files JADP02 TXT program description JAVA2COB MGT generation name management file DATEMAIN PRJ project file DATEMAIN CBI compiler option file DATEMAIN COB COBOL source program DATE02JAVA PRJ project file DATE02JAVA CBI compiler option file DATE02JAVA2 PRJ project file DATE02JAVA2 CBI compiler option file COBOL functions used Object oriente...

Page 84: ...te an adapter class of the java util Date class that contains the Date constructor Project build or rebuild function This section explains how to create an executable program using the build function of the project manager Refer to the Fujitsu COBOL User s Guide for detailed information on how to use the project manager 1 When using Java JDK 1 1 x open project file DATE02JAVA PRJ When using Java2 ...

Page 85: ...Appendix A Message List This chapter explains the messages output by the J adapter class generator including the operator responses to the messages ...

Page 86: ...vironment contains an error Check whether environment variables PATH and CLASSPATH are set normally and whether JDK or J2SDK is installed normally Java2cob class loading failed Reinstall the J adapter class generator and retry The J adapter class generator is not installed normally Reinstall the J adapter class generator Failed to open the optional file Check the file status Generation was interru...

Page 87: ...rface name and retry Error An invalid class name xxx was specified Specify a Java class name or interface name qualified by a package name Specify a valid class name or interface name and retry Warning A valid directory name was missing The option was ignored to continue processing Specify a valid directory name and retry Error An invalid directory name xxx was specified Generation was interrupted...

Page 88: ... Option ReduceClass parameter or the r option or Option GenOnlyUsed parameter and re execute the processing The r option or Option GenOnlyUsed parameter is recommended Error Both of the om option Option ReduceClass and the s option Option String cannot be specified at the same time Generation was interrupted Specify either om option or Option ReduceClass parameter or the s option or Option String ...

Page 89: ...structor xxx exceeded 160 characters The characters after the first 160 characters were deleted Check whether deleting the characters after the first 160 characters results in an unusable name Error Class information was not found Generation was interrupted Check whether there is a class interface class file referenced from the class interface see Generating an adapter class when the class file is...

Page 90: ... dimensions For instance Z is used for a 2 dimensional array byte B The number of indicates the number of dimensions char C The number of indicates the number of dimensions short S The number of indicates the number of dimensions int I The number of indicates the number of dimensions long J The number of indicates the number of dimensions float F The number of indicates the number of dimensions Ar...

Page 91: ...ed in the Java VM Increase the values of environment variables COBJNI_MAX_NSTACK COBJNI_JAVA_STACK COBJNI_MIN_HEAP and COBJNI_MAX_HEAP to increase memory space available for the Java VM No Java interface abstract class instance can be generated Check whether the Java class interface was changed after the J adapter class generator was executed A constructor was executed in an abstract class The Jav...

Page 92: ...cify a subclass of the array element class An attempt was made to set an invalid class object in an array element Set an object of a valid class An object of the array element class or its subclass must be set An internal logical error inconsistency between the return value and object reference occurred Call the J adapter class generator supplier The J adapter class generator failed Collect failur...

Page 93: ...erator Response The Java class interface was probably changed after generation of an adapter class Check the Java class interface 3 Meaning Java class initialization failed Call the J adapter class generator supplier Response The J adapter class generator failed Collect failure information and call your Fujitsu systems engineer 4 Meaning A memory space shortage occurred Increase the values of envi...

Page 94: ... J adapter class generator contains a Java class name in invalid format Contact the J adapter class generator supplier Response The J adapter class generator failed Collect failure information and call your Fujitsu systems engineer 8 Meaning A same name is used for a parent and its child in the Java class interface definition Use different names for the parent and child Response The Java class int...

Page 95: ...ck the Java class interface 12 Meaning Java VM initialization failed Check the environment variables PATH COBJNI_CLASSPATH and JDK or JRE install environment Response The JDK J2SDK JRE or J2RE environment contains an error Check whether the environment variables PATH and COBJNI_CLASSPATH are normal or whether JDK J2SDK JRE or J2RE is installed normally 13 Meaning The character string could not be ...

Page 96: ...ne the error cause from the exception name and supplementary information and remote it 17 Meaning An internal logical error failure of the error detecting feature occurred Call the J adapter class generator supplier Response The J adapter class generator failed Collect failure information and call your Fujitsu systems engineer 18 Meaning The current thread could not be connected to Java VM Respons...

Page 97: ... EXCEPTION 51 GET MESSAGE 50 GET STRING LENGTH N 65 GET STRING LENGTH X 64 GET STRING N 64 GET STRING X 63 gf 33 gm 33 Inheriting a Java class 11 Initialization 22 instance method 11 24 60 instance object 11 instance variable 11 26 58 interface name 34 37 42 53 internal class 53 Invoking COBOL from Java 12 Japanese 12 35 Java class 11 14 18 34 37 51 Java object 11 25 Java VM 22 23 29 46 48 J DUPLI...

Page 98: ... Index 98 r 20 33 34 58 ReduceClass 40 restrictions 12 return value 57 Runtime 12 s n 34 SET ARRAY ELEMENT 69 source file 19 29 42 String class 26 44 54 61 t 34 Termination 22 Unicode 35 38 unique name 69 ...

Reviews: