Java: The Future of AS/400 App Development

Most AS/400 developers continue to develop their applications today the same way they did 10 years ago – with RPG. But if IBM has its way, that will change, and Java, which was introduced to the AS/400 in this past February’s V4R2 release of OS/400, will revolutionize application development on the platform and open it to the larger computing world.

“Java is potentially the AS/400’s future,” says Laurie McCabe, service director at Boston-based Summit Strategies. “If Java takes off commercially – in terms of developers producing a critical mass of commercial applications – it’s great news for the AS/400.”

Which isn’t to say that five or even 10 years from now, nearly all AS/400 application development will be in Java and RPG will be a dinosaur. “RPG will probably be around as long as you and I are alive,” says Jim Anderson, the Java manager at IBM AS/400 Partners in Development. “It’ll continue to dominate the AS/400 marketplace in terms of lines of code and skills. What Java does is open up the AS/400 to a modernized application environment. Java is central to that effort.”

Perhaps the biggest reason people at IBM and elsewhere are so excited about Java on the AS/400 is the way the AS/400 runs Java. Unlike other platforms that support Java, the AS/400 runs the Java Virtual Machine (JVM) – the executable portion of the Java code – from within its operating system, ensuring better performance. Performance is one of the chief issues holding back server-side Java from wider acceptance.

“On most systems, the JVM runs above the operating system,” says McCabe. “On the AS/400, it runs underneath the operating system, below the TIMI, in the SLIC. The bottom line is because it’s running below the operating system, it runs faster and is more secure. This perfected implementation of Java that the AS/400 can offer is a big plus if the applications are commercially available and broadly marketed.”

Of course, it goes without saying that Java’s heyday on the AS/400 is still a ways off. Anderson points out that it’s an “evolving technology” that’s not yet ready for mission-critical applications. “We don’t want to suddenly decide that today is the best environment for building commercial applications in Java. Java technology is young,” he says.

“In 1997, we viewed Java as a client environment that could attach to the AS/400. In 1998, we introduced the Java Virtual Machine on the server side and positioned the AS/400 for simple server applications. By 1999, 2000, we should be able to cut over to mission-critical applications in Java.”

Start Me Up

So how do you get started in Java? When you license V4R2 of OS/400, you got to try Inprise’s (formerly Borland) JBuilder/400 and IBM’s VisualAge for Java for 90 days. Both are high-level Java rapid application development tools.

JBuilder/400, from Scotts Valley, Calif.-based Inprise, is a visual RAD tool for the AS/400 with more than 130 drag-and-drop JavaBeans, which are reusable software components that can be manipulated visually in a builder tool. It offers 100 Percent Pure Java access to AS/400 data in native mode or through JDBC, featuring reuse of already-developed AS/400 applications and Java objects.

Its development environment is integrated with the IBM AS/400 Java Toolbox (a set of Java classes used by Java applets and applications to access AS/400 data and resources) and has wizards to generate Java objects automatically, speeding development time. These objects conform to AS/400 API specifications. The product supports both CORBA and RMI standards.

VisualAge for Java, the newest member of IBM’s VisualAge family of object-oriented application development tools, generates Java applets that can interact with the AS/400 in an Internet-based application.

It allows for a more tightly integrated development environment for AS/400 customers who want to write Java applications or applets for either the client or the AS/400 server. Visual Age for Java developers can develop rich, full-functioning Java applications to run on the AS/400 or access existing AS/400 applications via Java programs.

Java Toolboxes

Like JBuilder/400, Visual Age for Java is closely integrated with IBM’s AS/400 Java Toolbox and supplies a WYSIWYG composition editor, which uses pre-supplied and user-defined JavaBeans.

The leading AS/400 application development vendors also offer their customers tools to get started in Java, all requiring little or no Java programming expertise.

San Antonio-based Amalgamated Software of North America (ASNA) offers the ASNA Database Toolbox for Java (ADBT), a set of 100 Percent Pure Java libraries that enable access to AS/400 database files. ADBT includes a set of wizards to help create specialized classes that call programs and access individual database files. The applications developed with the ADBT can be executed on the AS/400 or any other platform equipped with a JVM.

“For those shops whose staff is composed of programmers with different language preferences, the ADBT for Java complements our other development tools geared for Visual Basic and Visual RPG programmers,” says Eduardo Ross, ASNA’s VP of research and development. “We will keep enhancing our Toolbox to include those features that AS/400 programmers need to develop their business applications.”

But Ross says he’s skeptical that Java will ever catch on with most AS/400 developers. “ADBT for Java has been a relatively easy addition to our suite of development tools, but Java is becoming a big stumbling block for the typical AS/400 shop and may actually never catch on in this community. For the AS/400 to become a popular Java server, it will be necessary to attract applications that have been developed by outsiders, mainly people from the Unix and PC worlds.”

Beating Redmond at Their Own Game

McCabe agrees that the AS/400 needs to build what she calls a “critical mass” of Java applications. It can do so by emulating an old adversary – Microsoft.

“Microsoft made it easy for developers to write for NT and easy for resellers to sell and support NT and back office solutions. Other companies – IBM, Sun, Oracle – have to build the same kind of programs for Java. If they can do that, they can build a critical mass of applications, which bodes well for Java, but that’s a big if,” she says.

The good news is that McCabe says IBM is already doing some of the things Microsoft has done. But they’ll have to beat Redmond at its own game.

“Even though Microsoft controls NT, it’s perceived as being open. Java is too. But with the AS/400, you’re locked into IBM hardware and IBM services. You can run NT on so many different vendors’ hardware, it’s perceived as offering more choices. That’s another hurdle IBM faces. It’s definitely something Microsoft will use against the AS/400,” she says.

One company that seems to be following IBM deeper into Java technology is Atlanta-based Client/Server Technology Inc. (CST). Like IBM, CST started out in client-side Java with its Jacada product. Jacada generates a 100 Percent Pure Java GUI for 5250 green-screen applications. This technology was incorporated into Synon’s 2E (now Sterling COOL:2E) AS/400 application development tool, allowing users of that tool to generate graphical AS/400 applications.

Earlier this year, CST introduced the Jacada Server to run natively on the AS/400 (under V4R2 and up), allowing developers to deploy Java GUIs directly from the AS/400. TN5250 support, session management, host screen recognition and data marshaling services to connect the Java GUI to the 5250 session are all provided from the Jacada Server.

In addition, CST released two new Java application development tools – Jacada Component Server and Jacada Integrator -- earlier this month. Jacada Component Server is a Java-based specialized application server that provides access to 5250 (and 3270) applications without requiring modifications to the existing applications or any special knowledge of the application code or data structures. It leverages the Jacada conversion and server technologies by publishing an open Java API.

Jacada Innovator allows developers to build and deliver Java graphical interfaces for RPG and COBOL applications which communicate directly with the host application – no DDS, no 5250, no screen-scraping.

“This is not screen-scraping, but a step-wise approach to transitioning AS/400 skills and applications to the distributed world of Java, says CST senior VP of marketing, David Holmes.

“We are excited about IBM’s implementation of Java on the AS/400,” he says. “We have achieved good results on V4R2 and the early V4R3 results are even more exciting. The static compiler and inherent architecture of the AS/400 make for a compelling Java server.”

Lansa Inc. (Oak Brook, Ill.) has two application development tools that support Java -- Lansa for the Web and Lansa Open. Lansa for the Web uses Java (as well as HTML and CGI) to Web-enable existing AS/400 RPG and COBOL applications, extending them to e-business. Lansa Open is middleware used to connect PC applications with AS/400 data. It integrates with Java development tools such as IBM’s Visual Age for Java and Borland’s JBuilder/400, providing added data integrity and security for customers using these tools to access AS/400 data.

“Lansa will continue to build more Java generation capability into our product line,” explains Bill Benjamin, VP, business development at Lansa. “In particular, we will phase in generation of both server side and client side Java in our Lansa for the Web and Visual Lansa products.”

Lansa for the Web, famous as the tool used to build IBM’s AS/400 Web site, leverages the new Java servlet capabilities of OS/400 V4R3 for improved response times and availability of applications developed with the tool.

While Benjamin agrees the AS/400 offers a technically sound implementation of Java, he’s not so sure it’s going to be the savior of the platform.

“The real issues are more broad market oriented – will the industry be able to create a “write once, run anywhere” version of Java? Can IBM really market the AS/400 as a Java server and attract new customers and partners to the platform? Will the AS/400 community more openly adopt application development tools like Lansa? That will be the only way that the existing AS/400 community will transition to Java quickly.”

Leveraging Existing Applications

Seagull Software Systems Inc. (Alpharetta, Ga.) makes the J Walk developer’s toolkit, which generates both Java and Windows GUI clients for existing AS/400 applications from a single development effort.

“Our mission is to help our customers take advantage of new technologies like Java for their existing application portfolio, extending the return on investment in existing systems by keeping them relevant to these new technologies and to changing business processes,” says Andre Den Haan, director of product strategy at Seagull.

Den Haan adds that Seagull plans to continue to exploit new Java technologies as they become available and stabilized on the AS/400, such as Enterprise JavaBeans.

“IBM is zealously committed to making the AS/400 a premier Java server, and we believe they’ll achieve that objective,” says Kim Addington, VP of marketing at Seagull. “Once they do, it goes a long way toward eliminating any lingering perceptions about the proprietary nature of the box. So the billion dollar question centers around the rate and scope of the industry’s adoption of Java as a primary computing platform.”

When Synon Corp., was acquired by Sterling Software, it brought its AS/400 Java-generation capabilities to the Dallas-based company. Sterling’s COOL:Plex, the former Synon Obsydian, generates Java code that will run on any JVM, including the AS/400. In fact, Obsydian-generated applications were used to test the AS/400 JVM.

“The generation of Java allows our customers to extend their reach out to any JVM supported platform,” explains Ramon Chen, product manager for COOL:Plex. “This provides them with much greater choice and flexibility.

“In addition, Java opens up the world of the Internet to our customers. Through Sterling’s model-based application development, business designs that have been developed – and previously deployed to other target platforms and languages – can now exploit Java through a simple ‘flick of a switch.’ Java code can be generated from those same designs so our customers can realize the benefits of Java with no additional overhead of Java training.”

Chen says Sterling works closely with IBM, Microsoft and other OS vendors to make sure it stays “ahead of the curve” in Java technology. He says IBM has made the AS/400 the “premier” Java server in the marketplace.

“We are extremely excited by the future plans IBM has made us privy to and look forward to incorporating those state-of-the-art technologies into our toolsets for the benefit of our customers,” he says.

Another Java application generation tool is Michaels, Ross & Cole’s (Lombard, Ill.) mrc-Productivity Series 97, a "thin-client" rapid application development and report writing tool suite that generates Java, as well as RPG and Visual Basic, applications from the same specifications.

Once you tell the system what type of application you want to build, you follow the prompts and enter your business specifications. Productivity Series handles the rest automatically, from database management to rapid Java code generation.

Any RPG or client/server application built with mrc-Productivity Series is Java-ready. Developers can automatically migrate existing mrc applications to Java without redevelopment.

Java’s Future

IBM’s Anderson promises that more development and middleware tools are on their way for AS/400 Java developers, including some from traditionally non-AS/400 vendors.

McCabe says it’s hard to say how big of an impact Java has had on the AS/400 so far, but says it’s given the AS/400 a bright future.

“IBM’s taken a system its customers were happy with, but that only had a limited life span and they’ve made it a great platform to run Java, which is perceived as having a great future. I don’t know how many customers have taken advantage of it so far, but I think you’re seeing people being a lot more bullish about the AS/400 going forward as a result of this and buying new AS/400s. Its future is a lot brighter,” she says.

“When customers have to justify buying an AS/400 in terms of choosing it over NT and Unix, bringing Java into play makes it a lot easier.”