What's Brewing With Java

BBj® is built on Java technology. Here, we track and analyze the developments taking place in the Java world. In this issue, BASIS Technical Product Manager Greg Grisham highlights the benefits of Sun's much anticipated Java Runtime Environment 1.4.

BBj 2.0 Builds On JRE 1.4 Enhancements

There are updates, and then there are UPDATES. The new Java Runtime Environment (JRE) 1.4 from Sun Microsystems is what the computer industry deems a "milestone" update. With this release, Sun comes out of the gates aggressively reacting to developers' needs and input, among them, more speed, XML and tighter security.

By design, BBj® allows the programmer to make direct calls to Java code. So, while BASIS will be implementing a number of the JRE 1.4 enhancements in BBj 2.0, you can pick and choose among other JRE 1.4 enhancements and implement them where you need them through direct Java access. In this column, I'll mention a few of the JRE 1.4 enhancements that I feel are particularly important to Business BASIC developers.

XML Processing In JRE 1.4
XML, by anyone's standards, will soon be one of the most widely used communication protocols. XML, or Extensible Markup Language, is the preferred technology in many information-transfer scenarios because of its ability to encode information in a way that is easy to read, process and generate. Sun has added an application programming interface (API) to enable support for processing XML documents. While much has been written about Microsoft's new XP strategy, XML has been identified as the standard for all .net protocols. So now your BBj application can format BBX data into XML for Web transmission.

What about Microsoft XP and Java?
We have all heard by now that Microsoft is not going to bundle its Java Virtual Machine (JVM) with its new XP operating system. It makes interesting reading in so far as it is always entertaining trying to figure out what Microsoft is doing. For BBj, this Microsoft strategy has no immediate impact. If you have installed any version of BBj, you noticed that BASIS doesn't use Microsoft's JVM and, unless or until Microsoft creates one that is competitive, we don't have any plans to use it.

Security In JRE 1.4
If you have used our b-Commerce site, you may have noticed it requires Sun's Java Secure Socket Extension (JSSE). For our b-Commerce application, this is a plug-in download. JSSE technology has now been integrated into the Java 2 Software Development Kit that contains the JRE 1.4. The API in the JSSE handles principal-based queries. Also, the default policy implementation supports principal-based grant entries. So, for system administrators, this means increased access control that includes not just what machine is running the code but also who is running it. Along with JSSE, Sun also integrated its Java Cryptography Extension (JCE) and Java Authentication and Authorization Service (JAAS), providing better security for packets going out within the network. Another interesting addition in the security area is the Java Certification Path. This allows you to build and validate certification paths, or certificate chains, a common attribute of client communication outside of the Business BASIC world. A number of other client models use certificate chains and now developers can apply them in the Java world.

Graphical Enhancements In JRE 1.4
The AWT package (Abstract Windows Toolkit, the Java API that enables programmers to develop Java applications with GUI components) has a number of enhancements, most notably in performance and behavior relating to graphical presentation. One of the enhancements most frequently requested by BBj programmers is the addition of mouse-wheel control. JRE 1.4 supports this, and we'll add a new mouse-wheel listener that allows customization of mouse-wheel behavior. Sun has also modified the AWT package to be fully 64-bit compliant, so the JRE 1.4 now runs on Solaris machines with 64-bit and 32-bit addresses.

One last notable enhancement is the upgrade to Java Database Connectivity (JDBC) 3.0 standards. Using the JDBC 3.0 API, you can access virtually any data source, from relational databases to spreadsheets to flat files. You can connect your Business BASIC applications to data residing across the enterprise.

And there's a lot more to Sun's JRE 1.4 than just what I've outlined here. You can get all the details on these and numerous other enhancements available with the 1.4 version at: