Runtime configurations

EGL allows you to generate a Java™ program for any of several supported platforms. You can deploy the program outside of J2EE or in the context of any of the following J2EE containers--

You can call an EGL-generated Java program in an EGL service or EGL Web service, but only if the program is non-interactive. The program in this case may be deployed inside or outside of J2EE.

In addition, EGL provides a way to define a Web application that has the following characteristics:

For details on this specialized support for Web applications, see PageHandler part.

You also can update a program of type VGWebTransaction, although the best practice is to use PageHandler parts for developing Web applications. EGL includes the program type to support migration of a VisualAge® Generator program type that allowed developers to structure a Web application as if the code were running in a non-Web environment. The program of type VGWebTransaction retrieves data, displays data, accepts user input, and post-processes data, whereas most applications built with PageHandler parts forward control from one Web page to the next.

A program of type VGWebTransaction is a main program (not called) and runs outside of J2EE.

Finally, you can use EGL to generate a Java wrapper, as described in the next section.

Use of a Java wrapper

The EGL-generated Java wrapper is a set of classes that lets you invoke an EGL-generated program from non-EGL-generated Java code; for example, from an action class in a Struts- or JSF-based J2EE web application or from a non-J2EE Java program. The Java-to-EGL integration task is as follows:
  1. Generate Java wrapper classes, which are specific to a generated program
  2. Incorporate those wrapper classes into the non-generated Java code
  3. From the non-generated Java code, invoke the wrapper-class methods to make the actual call and to convert data between these two formats:
    • The data-type formats used by Java
    • The primitive-type formats required when passing data to and from the EGL-generated program

Valid calls

The next table shows the valid calls to or from the EGL-generated code.

Calling object Called object
An EGL-generated Java wrapper in a Java class that is outside of J2EE An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated EJB session bean
An IMS/VS program (generated by EGL or not)
A CICS® program (generated by EGL or not)
An EGL-generated Java wrapper in a J2EE application client An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated EJB session bean
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)
An EGL-generated Java wrapper in a J2EE Web application An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated Java program in the same J2EE Web application
An EGL-generated EJB session bean
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)
An EGL-generated Java program that is outside of J2EE An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated EJB session bean
A non-EGL-generated program that was written in C or C++
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)
An EGL-generated Java program that is in a J2EE application client An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated EJB session bean
A non-generated program that was written in C or C++
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)
An EGL-generated Java program in a J2EE Web application An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated Java program in the same J2EE Web application
An EGL-generated EJB session bean
A non-generated program written in C or C++
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)
An EGL-generated EJB session bean An EGL-generated Java program (non-J2EE)
An EGL-generated Java program in a J2EE application client
An EGL-generated EJB session bean
A non-generated program written in C or C++
An IMS/VS program (generated by EGL or not)
A CICS program (generated by EGL or not)

Valid transfers

The next table shows the valid transfers to or from EGL-generated code.

Transferring object Receiving object
An EGL-generated Java program that is outside of J2EE An EGL-generated Java program (non-J2EE)
An EGL-generated Java program that is in a J2EE application client An EGL-generated Java program in the same J2EE application client
An EGL-generated Java program in a J2EE Web application An EGL-generated Java program in the same J2EE Web application

Feedback
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.