by Kieron Murphy

Beta 3 of JDK 1.1 is chock fulla beans โ€” and more

news
Feb 1, 19978 mins

Find out what the latest revision of JavaSoft's developer toolkit offers in terms of new features and performance, and when the final (non-beta) release will ship

Last week Sun Microsystems quietly published the beta 3 release of the Java Developer Kit (JDK) 1.1. There is, however, much for Sun to boast about in the new upgrade. In addition to the routine complement of necessary bug fixes, the beta 3 of the JDK 1.1 offers:

  • The JavaBeans 1.0 API spec
  • A host of application windowing toolkit (AWT) changes, including a complete rewrite of the Win32 version of the windowing toolkit
  • A math package
  • New printing functionality
  • A myriad of technical improvements in using remote method invocation (RMI), the native method interface, and revised Java tools and language for maximizing performance and security

A beta 3 version of the Beans Development Kit (BDK) 1.0 also shipped concurrently with the new JDK 1.1 revision.

โ€œThe big change is the incorporation of JavaBeans into the 1.1 build,โ€ said Sun Java Evangelist Miko Matsumura. โ€œItโ€™s a rockinโ€™ important step. The beta 3 is also much less buggy, as every rev is. If youโ€™re developing on top of 1.1, you will want to download this and every future rev.โ€

The JavaBeans (java.bean) package and support classes offer developers a standard architecture for using complex, reusable components across all Java virtual machines. The BDK offers the latest technology, such as the BeanBox test, for perfecting them.

โ€œAnother key feature that developers will be interested in is the lightweight user-interface framework,โ€ said Eric Chu, the product line manager for the JDK. โ€œThe Lightweight UI Framework in the JDK 1.1 enables developers to create innovative custom Java UI components that are lightweight, partially transparent, and handled with 100 percent consistency across all Java platforms.โ€

Furthermore, according to Sun, the Win32 version of the AWT has been โ€œrewritten 100% from scratchโ€ and promises to improve considerably the performance of Java apps running in Windows 95 and Windows NT. As an alpha feature, though, the company admits that it is certain to be buggy and openly invites the developer community to post vermin reports to a special page on its Web site.

Other changes to the AWT include:

  • A new ContainerEvent class and equivalent ContainerListener interface to enable notification when components are added or removed from containers

  • A score of changes in classes and methods to aid fine-tuning of input events in the java.awt and java.awt.event packages

  • A getTreeLock() to the java.awt.Component method

  • The ability to directly extend the Container and Component classes to create โ€œlightweight components,โ€ enabling them to support transparent pixels

Adding both JavaBeans and a new Win32 AWT to the mix of JDK 1.1 upgrades is a surprise to some Sun watchers and is stark evidence of the companyโ€™s desire to accelerate its pace to get a gold version of 1.1 to market. This will allow Sun to stabilize the explosive growth of adaptations to its platform from all corners of the network-language universe. Though JavaSoft is being very guarded about its future plans, the inside word now is that the JDK 1.1 will be finalized within the next few weeks โ€” think Valentineโ€™s Day โ€” and that the only difference is that the final will simply be of โ€œhigher quality than the beta 3.โ€

One final note about this release: JavaIDL has been decoupled from the JDK 1.1 and will be available on a slightly delayed schedule. JavaIDL, which is โ€œimplemented entirely in Java,โ€ will work seamlessly on top of the JDK 1.1 when it is finalized.

Comments from the peanut gallery

โ€œIt looks like the beta 3 improves performance quite a bit, as well as being more stable,โ€ said Rob Currie, vice president of engineering for Marimba Inc., in Palo Alto. โ€œWeโ€™ve got our transmitter internally running on the new version, and it seems to be working really well. So far, the compatibility has been good in our experience. It looks as if Sun has done a pretty reasonable job of making sure that existing stuff works better, in addition to adding a bunch of cool new stuff to the build. Adding printing, for example, is a really nice feature. And many of our customers have been asking for IIOP functionality, which they will soon be able to take advantage of.โ€

โ€œThere are still some bugs โ€” and an incorrect design in one case โ€” regarding the new event model for the AWT,โ€ reported Ted Young, president of Advanced Web Technologies Corp., a New York City-based Java training and outsourcing company. โ€œAnd in general, there are still some pretty major inconsistencies across platforms. But is it worth another download? Iโ€™ll download it to play with the new AWT and language features; however, Iโ€™ll still keep the beta 2 around to work with for now.โ€

โ€œOverall, I welcome the introduction of the JDK 1.1b3 for its features and stability,โ€ said Mark Evenson, a senior software engineer at EarthWeb, the people responsible for giving you the killer Gamelan content site on the Web. โ€œMy biggest concern is its adoption rate for network browsers. I have heard that JDK licensees have to implement the JDK 1.1 API within six months after FCS [first customer ship]. What this means in real terms is anyoneโ€™s guess, but I question whether the Netscape and Microsoft 4.0 browsers will occupy the same market that the current 3.0 browsers do. Given the system footprint these browsers will bring, a reasonable guess is that adoption will first occur in large offices, rather than in homes. At what point will one be able to assume that JDK 1.1 applets can have the same general Internet coverage that those in JDK 1.0.2 now receive? It could be a really long time.โ€

โ€œI downloaded it to stay current and found an applied bug fix that was immediately useful,โ€ said Jeffrey Morgenthal, a research analyst with D. H. Brown Associates, in Port Chester, NY. โ€œI have a mailer for my newsletter, which uses the open dialog box. In the beta 2, this box never received focus in Windows 95, forcing me to click on the window to bring it to the top. Now the dialog box has focus upon popping up. More to the point, though, users should also be aware that they will need the JDK 1.1 beta 3 if they want to stay current with the BDK. The new BDK is much more advanced and offers dynamic adapter classes generated on the fly.โ€

โ€œPerformance on Solaris screams compared to the JDK 1.02,โ€ said Alexander Day Chaffee, software engineering director for Earthweb and co-creator of Gamelan. โ€œThis makes developing high-performance server-side applications completely in Java really viable for the first time. But the really cool part is the new language features, like Beans and Reflection.โ€

โ€œWhat does the final 1.1 need that the beta 3 does not address? Well, API-wise, I believe it is complete; but with the new Win32 AWT rewrite, Iโ€™m sure Sun will be spending a great deal of time working out the kinks,โ€ suggested Bob Troia, the senior application developer at www.poppe.com, the Web site of the NYC-based Poppe Tyson advertising agency. โ€œJavaSoft is collaborating with industry specialists to develop the Java Media APIs, Java Enterprise APIs, Java Commerce APIs, Java Security APIs, Java Servlet APIs, Java Management APIs, and Java Embedded APIs, some of which will be core APIs and some standard extensions. I havenโ€™t played much with this stuff yet, but if youโ€™re interested, check out the classes in the java.media package. It looks like thereโ€™s even a MIDI player in there, but itโ€™s currently marked as `x-midiโ€™.โ€

โ€œSure, weโ€™ve discovered a few bugs [in the beta 3], but in general it looks like a pretty good release,โ€ said Marimbaโ€™s Currie. โ€œNaturally, what we would like to see in all releases is a leaner, meaner JDK. If it did nothing else than what was in the current spec, but it did it with better memory management and stuff like that; then weโ€™d be thrilled. And that looks kind of like what Sun is doing.โ€

All dressed up and somewhere to go

The beta 3 release will only create applets in browsers that currently support it โ€” namely HotJava pre-beta 2 (and later). Though this release will let you test the performance of your products within your own firewalls, it is not intended for domestic consumption. You cannot yet ship products created in it for Windows 95, NT, and Solaris. You will have to wait for it to go gold/FPC. And as for you suffering Macintosh developers, you are going to have to wait until the second quarter of the year before getting a chance to muck around in the thing.

Interestingly, the release of the 1.1 beta 3 comes almost one year to the day after the introduction of the JDK 1.0 beta. And it comes seven weeks after the introduction of the JDK 1.1 beta. The acceleration in the pace of work on all things Java by Sunโ€™s JavaSoft development unit can only be a sign of glad tidings from the team responsible for the future of a caffeinated solar network system.

Whatโ€™s the bottom line on the JDK 1.1 beta 3? Sun is not asleep. Significant metrics in performance are now available to those who want to get the ball rolling in a framework that continues to improve. But if you want to exercise a little patience and avoid a few bugs, you might want to wait for a Valentineโ€™s present from JavaSoft โ€” the final JDK 1.1 release.