July 2000 Java News

Monday, July 31, 2000

Slava Pestov's posted the first beta of JEdit 2.6 with various new features and bug fixes including a more standard interface, many more options for printing, and non-blocking I/O as well as assorted bug fixes. JEdit a programmer's editor written in Java and published under the GPL.

Sunday, July 30, 2000

eTeks has released the Pure Java AWT (PJA) library for using java.awt.Graphics to draw 2D pictures without rendering them on the screen or requiring native libraries to be invoked. It's useful for server side programs that need to generate 2D images like pie charts without having access to an X-server or similar display. PJA library is free to enable people to optimize the Graphics methods and use it on their server. PJA is published under the GPL.

Saturday, July 29, 2000

IBM's alphaWorks has updated the Remote AWT for Java for the "GA version of Java 3". The Remote AWT for Java is an implementation of AWT for Java that allows any Java application running on one host to display its GUI components on a remote host and to receive all the events that are posted to its component in the remote host, sort of like X-Windows. Changes in thius release include performance improvements, support for locales, and sound. However, the most interesting part of this release is the "GA version of Java 3". Is that just a typo, or did somebody at IBM let something slip they weren't supposed to?

Friday, July 28, 2000

O'Reilly & Associates is asking Java developers to take 10 minutes to complete a Java Developers Survey. They'll use the information to "help us produce books, web articles and conferences that meet the current needs of the Java community." Be sure to check off Cafe au Lait as one your Java Websites. (Of course by posting this announcement here, at O'Reilly's request, I've completely screwed up the demographics of the survey, at least for this question.) 50 randomly chosen survey respondents who are willing to leave their name and contact info (You don't have to do this if you don't want to, and in general I recommend you don't.) will receive a copy of Brett McLaughlin's Java and XML.


IBM's alphaWorks has released a new version of IBM-SOAP, their Java reference implementation of SOAP 1.1. This release updates the NASSL Toolkit (whatever that is).

Thursday, July 27, 2000

Daniel F. Savarese has donated his OROMatcher Regular Expression class library to the Jakarta Project so it will now be open source. The renamed Jakarta-ORO Java classes "provide Perl5 compatible regular expressions, AWK-like regular expressions, glob expressions, and utility classes for performing substitutions, splits, filtering filenames, etc. This library is the successor to the OROMatcher, AwkTools, PerlTools, and TextTools libraries from ORO, Inc."

Wednesday, July 26, 2000

I've posted the slides from this week's presentations in Atlanta. These include:


Netscape has released Netscape Communicator 4.74 for the ususal list of platforms. This is primarily a bug fix release plus a few minor new features. Java support is not changed.

Monday, July 24, 2000

If you're in Atlanta tonight (Monday), come hear me talk about Java 1.4 and Beyond at the Atlanta Java User's Group. Now that Java 1.3 has been officially released, it's time to explore both where Java is going in the future and where it should go (which may or may not be the same place). What's ahead for the Java language and libraries? Will Java ever get templates, operator overloading, and multiple inheritance? Perhaps more to the point, should it get these constructs? Will Java I/O ever be fast enough for data intensive work? Will your network programs be allowed access to the raw IP layer so ping or traceroute can be written in Java? The meeting runs from from 7 P.M. to 9 P.M. and is held at the Ravinia Conference Center near Perimeter Mall. Directions are on the AJUG web site. As usual, I'll be posting the notes from my talk here on Cafe au Lait after the talk. However, the notes are quite skimpy compared to what I'll be saying, so you definitely want to attend if you can. Tomorrow I'll be at the Georgia Web Developers Conference where I'll be talking about XML Fundamentals and Web Client Programming in Java.

Saturday, July 22, 2000

Sun's refreshed its Java 1.1 Development Kit for Solaris (both Sparc and Intel) to fix a couple of bugs. This is officially the JDK 1.1.8_11 for Solaris Production release .

Friday, July 21, 2000

This coming Monday, July 24, I will be speaking to the Atlanta Java User's Group about Java 1.4 and Beyond. Now that Java 1.3 has been officially released, it's time to explore both where Java is going in the future and where it should go (which may or may not be the same place). What's ahead for the Java language and libraries? Will Java ever get templates, operator overloading, and multiple inheritance? Perhaps more to the point, should it get these constructs? Will Java I/O ever be fast enough for data intensive work? Will your network programs be allowed access to the raw IP layer so ping or traceroute can be written in Java? Come to the July meeting of the Atlanta Java Users Group to hear one outside oracle's predictions for the future of Java.

The meeting runs from from 7 P.M. to 9 P.M. and is held at the Ravinia Conference Center near Perimeter Mall. Directions are on the AJUG web site. As usual, I'll be posting the notes from my talk here on Cafe au Lait after the talk. However, the notes are quite skimpy compared to what I'll be saying, so you definitely want to attend if you can.

Then, next Tuesday, July 25, I'll be giving two talks at the Georgia Web Developers Conference:

Both events should be a lot of fun. I hope you can come!


Sun's reported excellent earnings for its just-completed fourth quarter. Net income grew 67 percent to $659.5 million, 39 cents per diluted share, from $395.3 million and 24 cents a diluted share in the same quarter last year. Revenues grew 42 percent to $5 billion from $3.5 billion in the fourth quarter of the last fiscal year. As is customary, these numbers exclude various one-time gains and acquisition-related charges.

Thursday, July 20, 2000

The Apache Project has rleased ANT 1.1, a popular make-like tool for Java. This is the first stand-alone build of Ant. Previous versions were available only with TomCat.

Wednesday, July 19, 2000

Sun's posted two new Java Specification Requests:

The Generic Security Services API (GSS-API) is proposed by Sun. It will define an API for security services like authentication, integrity, and confidentiality based on a range of underlying security mechanisms, including Kerberos.

The Java Data Mining API (JDMAPI) is proposed by Oracle. JDMAPI will define a pure Java API that for creating, accesing, and storing data and metadata for data mining models, data scoring, data mining results, and data transformations. It will become part of the Java 2 Platform, Enterprise Edition.

The review for both of these closes on Monday, July 31, 2000.

Tuesday, July 18, 2000

Romain Guy has released version 2.8.1pre9 of Jext, his free programmer's editor written in Java. Most interestingly, this version is the first application I've seen that's Java Web Start enabled.


The Clinton administration has now decided to let U.S. companies export encryption products to the fifteen member states of the European Union plus Australia, Norway, the Czech Republic, Hungary, Poland, Japan, New Zealand and Switzerland without first obtaining a license. Assuming Congress goes along (and it probably will), this will be a small step in the right direction; but a there's still a long way to go. Many of the countries where encryption is most desperately needed to protect citizens from their governments (China, North Korea, Israel, Myanmar, Singapore, etc.) are not on this list. The only acceptable solution is the complete elimination of all resrtictions on encryption.

Monday, July 17, 2000

Who Trusts the Trustees? Trusted Security Providers in the Java Cryptography Extension 1.2.1 is my analysis of some important changes in version 1.2.1 of the JCE. This is not just a bug fix release. It is a major redesign that changes who is allowed to provide cryptography for Java and how they get permission to do so. Not only does this have serious implications for trustworthy cryptography on the Java platform. It opens the door for similar techniques to be used to prevent the development open source and other non-Sun approved virtual machines. Whether you use the JCE or not, I strongly recommend you read this and consider the implications.

Friday, July 14, 2000

BugSeeker for Java 2 is a new Java Platform Debugging Architecture (JPDA) based source-level, graphical, standalone Java debugger. It can debug servlets, EJBs, applets, and applications locally or remotely. BugSeeker has the usual list of debugger features like watchpoints, breakpoints, single-stepping, etc. BugSeeker is $195 payware. Java 1.2.2 or later is required.

Thursday, July 13, 2000

Sun's posted the third beta of the Java Naming and Directory Interface File system service provider.


Version 1.00 of the Free Pascal Compiler has been officially released. This is a GPL'd, Think Pascal compatible for for various processors (i386+ and 680x0) and operating systems (Linux, DOS, AmigaOS, OS/2, Win32). The language is more or less compatible with Borland's Think Pascal 7.0. It also offers some extensions used by Delphi (classes, rtti, exceptions, ansistrings) and adds function overloading.

Wednesday, July 12, 2000

Sun's posted a new beta of the JDK 1.3 for Solaris 2.6 and later. This focuses on bug fixes and performance improvements. Both the Java HotSpot Client VM and Server VM are included.


Sun's posted the Public Review Draft Specification for the Unified Printing API. This is still a fairly early spec. There's no implementation, and I doubt this will replace the current Java printing API for another year or two at least.

As usual, the spec is only available in PDF. Scott McNealy did a good thing when he banned PowerPoint from Sun a couple of years ago. Now if he would only ban Acrobat too, I think we'd all be a lot happier.

Tuesday, July 11, 2000

Jeff Collins and Michael M. Gorlick have ported Python to the Palm Pilot. This is an alpha port of Python-1.5.2+.

Monday, July 10, 2000

Slava Pestov has released JEdit 2.5, an open source programmer's editor written in Java. Version 2.5 adds

A New I/O subsystem
The file loading and saving code has been completely overhauled in jEdit 2.5. The code is cleaner and more modular, which should make it easier to extend in the future. Also, all I/O is now performed in a separate thread, which improves responsiveness.
FTP load and save
Taking advantage of the increased modularity of the new I/O code, the FTP 'virtual filesystem' allows transparent access to files stored on FTP servers. It supports username/password authentication and browsing of remote directories.
Improved split pane feature
It is now possible to edit multiple buffers side-by-side in a split view. Previously, all splits had to edit the same buffer.
Changing settings on a mode-by-mode basis
Settings such as the tab size, comment strings, and various flags can now be set on a mode-by-mode basis in the Utilities->Global Options dialog box. The patterns used to match file names to modes can be customized as well.
Customizable tool bar
The tool bar can now be customized in the Utilities->Global Options dialog box.
Searching in file dialog boxes
The 'Open File' and 'Save As' dialog boxes now have a built in 'find file' widget that supports searching by file name and modification date. This widget was written by Ken Klinner .
Register and marker improvements
Markers and position registers are now highlighted in the gutter. Commands have been added to go to the closest marker before and after the caret.
Macro improvements
Macros can now prompt for input. Also, register contents can now be substituted into action commands by writing '$x', where 'x' is the desired register.
HyperSearch improvements
The 'HyperSearch' window now performs searches in a background thread. This improves percieved performance, gives feedback while the search is in progress, and allows the search to be interrupted.
Improved home/end commands
The behaviour of the HOME and END keys has changed. Pressing them multiple times will now go to the first/last non-whitespace character on the current line, then the start/end of the current line, and finally the first/last visible line. (Editor's note: I hardly consider this an improvement. The home key should take you to the beginning of the document. The end key should take you to the end of the document. Anything else is non-standard and confusing. This is a classic example of a Windows/Unix programmer mistaking complexity for power. )
Background mode
If the '-background' switch is specified on the command line, jEdit will stay resident and continue running even if no views are open. On systems with lots of free memory, this improves performance because jEdit only needs to load once.
Sunday, July 9, 2000

Sun's posted a new beta of the Java 2 Standard Edition 1.3 for X86 Linux (i.e. JDK 1.3, JRE 1.3, and Java Plug-in 1.3). This release adds HotSpot and merges together the Sun and Blackdown JDKs. Registration on the Java Developer Connection is required.

Saturday, July 8, 2000

The W3C has released version 2.0.5 of the Jigsaw web server, their reference web server written in Java that supports HTTP 1.1. Jigsaw supports the Java Servlet API 2.2 (with the exception of .war because "it is too 'file' oriented") and Java Server Pages. This is a bug fix release of the "stable" version of Jigsaw. A more experimental, possibly less robust version 2.1.1 is also available. Jigsaw is completely free and open source software.


IBM's alphaWorks has updated Jinsight 1.2, their visual tool for following the flow of execution of a Java program and seeing just what is going on as the program runs. This release adds tracing support on the OS/390 JDK1.1.8 platform, including tracing with the IBM WebSphere Application Server.

Friday, July 7, 2000

IBM's alphaWorks has updated Bridge2Java, their Java to ActiveX integration tool. This release fixes bugs in SAFEARRAYs, enumerations, and dates, and adds support for the Java Canvas class.


Sun's posted a beta of the Java 3D 1.2 API for DirectX on the Java Developer Connection (registration required). This is an implementation of the Java 3D API that uses native DirectX calls for improved performance on Windows. A Pure Java version has been available for some time as well. JDK 1.2 and DirectX 7.0 are required.

Thursday, July 6, 2000

Peter Parnes has launched the java-mobile mailing list for Java developers working with mobile devices. According to Parnes, "The list is open for discussing issues related to Java on mobile devices independently of the OS that runs on the device. It can e.g. be Java running in a Windows PocketPC environment or Linux on the same hardware, or Java on a Palm Pilot etc. The common denominator should be that the target device should be mobile and run Java." To subscribe send a blank message to java-mobile-subscribe@egroups.com from the account you wish to join from.

By the way, does anyone except me hate egroups mailing lists? Why do I need a username and password and just to subscribe to a mailing list. Requiring a simple confirmation email from the subscribed address is enough to prevent essentiually all abuses of mailing lists. The last time I tried to join an egroups list, they refused to let me because I told them I was under 18. (I'm not, but I routinely lie on such forms to attempt to destroy the value of the privacy-invasive databases these companies are so fond of. I think I also told them I lived in Afghanistan.) Why do they even need to know how old I am or where I live?

Wednesday, July 5, 2000

Sun's released Jiro 1.0. Jiro is a Java based set of tools for managing storage (hard disks and such) across networks. It's an implementation of the Federated Management Architecture (FMA) Specification. Java 1.2.2 or later is required. JIRO is distributed under the Sun Community Source License (SCSL). The Jiro Technology 1.0 release can be downloaded at .

Tuesday, July 4, 2000

IBM has released their port of the JDK 1.3 for Linux. As well as upgrading the JDK to the latest set of Java APIs, this release contains IBM's just-in-time compiler, a Mixed Mode Interpreter and a re-engineered Java 2 virtual machine.


Elsewhere at IBM, alphaWorks has released Regex for Java, a class library for regular expression string manipulation. It supports both Perl5 and XML schema regular expressions.

AlphaWorks has also released the Open Development Environment (ODE), a multi-platform (AIX, Solaris, HP-UX, Windows NT, MVS/USS, SCO UnixWare) development environment which facilitates parallel development of code. According to IBM,

ODE has the ability to have a base software build, known as a backing build, and the ability for a user to create a delta build from the base build, known as a sandbox. Sandboxes enable a programmer to make local changes to entire builds without having to have an entire copy of both the source code and build output.

Among other features in ODE is the base set of "rules" functionality. These rules define how a build is to be done. The build process is done in passes, such that everything in a given pass must be completed before the next pass begins. An example of this is: build all object files, create static libraries, create program executables, finally copy all installables to a given location. These rules support building of C/C++ and Java applications, but are not limited to these. The rules can be enhanced to add support for new programming languages and compilers (as well as new passes). In addition to the above function, ODE provides dependency generation and maintance so builds will be done accurately.

AlphaWorks has also released the Reliable Multicast Software Development Kit. This is a Java class library for creating custom multicast transmitter and multicast receivers for file transfers. This does not appear to use IP multicasting, though I'm not 100% sure of that.

If anybody has tried one of these out and wants to submit some more details I'll post a special report.

Finally, alphaWorks has updated their IRC Client for Java simply to move the expiration date back to 12/31/2000.

Monday, July 3, 2000

I've added some more reader comments to the C# special report.


IBM's posted a beta release of their port of JDK 1.3 to OS/2 Warp.


Slava Pestov has released beta 8 of JEdit 2.5, his open source programmer's editor written in Java. Beta 8 adds


Christopher Clemens Lee has released version 8.23 of JavaNCSS, a GPL'd source measurement suite for Java. It can tell you how many "Non Commenting Source Statements" (NCSS) there are in your code as well as calculating the "Cyclomatic Complexity Number (McCabe metric)". This release now counts Javadoc comments for methods.


Sun's released version 4.1 if the the Java Certification Package. This includes:

Java 1.1.6 or later is required.

Saturday, July 1, 2000

One of the things I've been thinking about for awhile is a way to post some of the interesting email I receive about Cafe au Lait pieces. Furthermore, I've noticed that lately I've been writing and posting some longer pieces that are more than simple announcements (private main() methods, C#, access violations, etc.) that don't fit so well into the normal structure here on Cafe au Lait. I'm still not ready to move to a full discussion board based system like Slashdot uses (though progress continues on that, albeit slowly). However, I have realized that I may not need to do that if I make only selected pieces of broad interest open for discussion rather than every announcement of a minor upgrade to an IDE. Thus I've created a new section on this web site called Cafe au Lait Special Reports. This will give me a place to pontificate at length as well as to post reader responses and comments. Initially I've posted two special reports based on recent discussion:

In the future, I'll add new reports as issues arise that generate a lot of reader participation. I'll announce updates to these reports as new information comes in. However, for the most part ongoing discussion will be limited to the reports page rather than to the main news page you're reading now. This will allow more discussion and longer ruminations while keeping this page short and to the point.

These reports are very much an edited collection, however. The only way to submit is by sending me an intelligent, humorous, and/or relevant email that I think is worthy of further dissemination. There will be no first-post wars and limited trolling. Anyone who asks me to pour hot grits down their pants will be unlikely to receive either grits or net-fame. :-)

If you have a comment about a particular piece, just email it to me. If I think it's interesting or reveals new information, I'll post it. However, please do specify that your email is intended for public distribution. By default, I assume that you want your private emails to remain private, and I will not post them unless you tell me it's OK to do so. Conversely, if you wish to remain anonymous and not be cited as even the source of some information, please tell me that too. In fact, in this case I recommend that you use a free email service or an anonymous remailer so that I don't even know your identity. Judges can't make me reveal what I don't know. If I do post your message, I'll first edit it lightly to format it as HTML, correct typos, and the like. In a few cases I may choose to excerpt only parts of it. Copyright on anything you write remains with you, of course, which is why I require your permission to post it here.

I hope you enjoy Cafe au Lait Special Reports. The C# special report already has some updates that haven't been posted here on the main page, as well as an Easter Egg for the sharp-eyed. Check it out, and enjoy!


Sun's posted streaming video recordings of fifteen sessions from JavaOne . You'll need RealPlayer G2 to view them. These are:

You can also read the news from June, May, April, March, February, January, December, November, October, September, August, or last July if you like.


[ Cafe au Lait | Books | Trade Shows | FAQ | Tutorial | User Groups ]

Copyright 2000 Elliotte Rusty Harold
elharo@metalab.unc.edu
Last Modified July 18, 2000