What's in the IBM Toolbox for Java V5R1?

Java
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times
IBM Toolbox for Java is a set of Java classes that allow you to access AS/400 or iSeries data through a Java program. With these classes, you can write client/server applications, applets, and servlets that work with data on your iSeries. You can also run Java applications that use the IBM Toolbox for Java on the iSeries Java Virtual Machine (JVM).

In this article, I'll discuss the functionality available with V5R1. In a future article, I'll tell you about the new functionality available with V5R2.

In V5R1, the IBM Toolbox for Java added functionality that gives users more power and flexibility. The functions delivered with V5R1 are designated as Modification 4 of the IBM Toolbox for Java. Figure 1 provides a list of the major IBM Toolbox for Java components for V5R1.

HTML Classes
Alignment tags
BIDI ordering
Headings
Lists
Ordered
Unordered
Meta information
Trees
File trees
File lists
URL parser

Resource Classes
Integrated File System (IFS)
Jobs
Users
Message queues
Printers

Servlet Classes
Authentication

Graphical Toolbox
The PDML framework uses Java Help.
GUI Builder includes context-sensitive help.
Changes in MessageViewer allow you to retrieve second-level text for iSeries messages and include your own HTML detail help.

Figure 1: These are the IBM Toolbox for Java components in V5R1.

The Toolbox also features two other classes that were new in V5R1:
JPing--classes to ping the host servers from a command line or within a Java program
ReportWriter packages--classes that enable you to use your iSeries to more easily access and format data from an XML source file or data produced by servlets or JavaServer Pages (JSPs)

As of V5R1, the IBM Toolbox for Java also provides support for JDBC 2.0 Optional Package extensions
Conversion of text in bi-directional languages, such as Arabic and Hebrew, between iSeries and Java formats
Linux workstations

If you intend to run a Java program that uses the IBM Toolbox for Java classes on the iSeries JVM, you must run the IBM Toolbox for Java at a compatible version and release level of the OS/400 that is running on your system. OS/400 ships with the parts of IBM Toolbox for Java that are needed to improve performance when your application is running on the iSeries JVM. Use the chart in Figure 2 to ensure compatibility.

Toolbox Modification
Ships with OS/400
LPP
Installs on OS/400
Connects Back to OS/400
Mod 0
V4R2
5763-JC1 V3R2M0
V3R2 and above
V3R2 and above
Mod 1
V4R3
5763-JC1 V3R2M1
V3R2 and above
V3R2 and above
Mod 2
V4R4
5769-CJ1 V4R2M0
V4R2 and above
V4R2 and above
Mod 3
V4R5
5769-JC1 V4R5M0
V4R3 and above
V4R2 and above
Mod 4
V5R1
5722-JC1
V4R4 and above
V4R3 and above

Figure 2: The IBM Toolbox for Java version and release levels must be compatible with OS/400 version and release levels.

HTML Classes

IBM Toolbox for Java HTML classes assist you in setting up forms and tables for
HTML Web pages. Each class produces an HTML tag for a specific element type. The tag can be embedded into any HTML document. The tags generated by the HTML classes are consistent with the HTML 3.2 specification. The HTML classes can work with Toolbox servlet classes to get data from the iSeries server. However, they can also be used alone if you supply the table or form data.

In V5R1, the HTML classes allow you to easily set up a hierarchical tree of HTML elements or represent a traversable IFS that you can use in HTML pages. With this article, I've provided code that shows a simple HTML example. This example code consists of three files that, together, display an HTMLTree and FileListElement in a servlet. (Click here to download the code.) Figure 3 shows the resulting output displayed in a browser.


http://www.mcpressonline.com/articles/images/2002/Toolbox%20v5r1%20ArticleV500.png

Figure 3: This is the result of the code, as shown in a browser.

Resource Package

The resource package provides classes that represent iSeries resources using a generic list-based scheme. These classes use buffering, transaction control, and list manipulation to improve the performance and manageability of lists of iSeries resources.

Some of the components in the com.ibm.as400.access package have counterparts that are represented as resources. For example, RJobList is the com.ibm.as400.resource version of the JobList class in the access package.

For some list-based operations, we recommend users move to the new resource classes as they are more robust and provide access to more function than the classes in the com.ibm.as400.access package do.

Report Writer Packages

The com.ibm.as400.util.reportwriter packages provide classes that enable you to use your iSeries to more easily access and format data from an XML source file or data produced by servlets or JSPs:

com.ibm.as400.util.reportwriter.pclwriter

PCLContext--The PCLContext class defines the methods necessary to render an area tree to a PCL data stream according to the rendering model of the XSL FO specification.

com.ibm.as400.util.reportwriter.pdfwriter

PDFContext--The PDFContext class defines the methods necessary to render an area tree to a PDF data stream according to the rendering model of the XSL FO specification.

com.ibm.as400.util.reportwriter.processor

JSPReportProcessor--The JSPReportProcessor class is used to obtain a JSP or a Java servlet from a given URL and create a document/report from the contents.

XSLReportProcessor--The XSLReportProcessor class is used to create a document/report by formatting XSL source data with an XSL stylesheet (consisting of formatting objects conforming to the Extensible Stylesheet Language Specification).

Graphical Toolbox

The Graphical Toolbox is a set of UI tools that makes it easy to create custom user interface panels in Java. You can incorporate the panels into your Java applications, applets, or Operations Navigator plug-ins. The panels may contain data obtained from the iSeries or data obtained from another source, such as a file in the local file system or a program on the network.

In V5R1, the GUI Builder allows you to incorporate JavaHelp in your panels, including context-sensitive help.

JTOpen--Open-Source Toolbox

With the popularity of Linux and open-source code, the IBM Toolbox for Java has joined the ranks of the open-source community with JTOpen, the open-source Toolbox for Java and IBM's first iSeries product to go open-source (see Figure 4 for other products). JTOpen uses the Mod 4 (V5R1) Toolbox code base, which runs on a V4R4 or higher iSeries and any client or server with a JVM. The IBM Toolbox for Java will continue to ship with each release of the iSeries, but with the JTOpen version, users can get up-to-the-minute improvements.

Open-sourcing the Toolbox is beneficial for a number of reasons:
Ability to obtain new functions and features from the Toolbox user community
Ability to respond to customer and business partner requirements as rapidly as possible
Improve the ability for customers to build and debug their own applications when using the Toolbox functions
Continue the drive to keep the AS/400 a leader in Java technology and application development


http://www.mcpressonline.com/articles/images/2002/Toolbox%20v5r1%20ArticleV501.png

Figure 4: These products are currently using JTOpen.

JTOpen is available for download from the Concurrent Versioning System (CVS) repository, a system that allows anybody to work simultaneously on groups of files. The JTOpen development process is open to anyone, and a list of guidelines and contacts is posted for those who want to get involved.

A controlling body known as the JTOpen Core Team manages the project. The team currently consists of three IBM employees along with two non-IBM members (including MCMagOnline columnist Joe Pluta) who act as administrators by ensuring that developer contributions are of good quality and will be useful to the entire community. Any new functionality that is committed to JTOpen will not be automatically added into the Toolbox LPP. However, new function that exists in future releases of the Toolbox LPP may also get submitted to the JTOpen repository, at IBM's discretion. The result is that JTOpen will become a superset of the Toolbox LPP.

The IBM Toolbox for Java in V5R1 has given developers unprecedented flexibility when building iSeries Java applications, applets, or servlets. And now, with the advent of JTOpen, the Toolbox looks to draw on the knowledge of the Toolbox user community as IBM and the Toolbox continue to be leaders in the Java development.

Learn more about the V5R1 version of the IBM Toolbox for Java at IBM's Toolbox for Java Web site or visit the JTOpen site and join other developers in making the Toolbox the most powerful client/server Java package available.

Robb Wiedrich is the Toolbox team leader at IBM Rochester. He has spent the last several years working on the IBM Toolbox for Java development team. Robb can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it..

BLOG COMMENTS POWERED BY DISQUS