Aug 17, 2004

A Little More Than Write-Once, Run Everywhere...

Java's motto has always been “Write Once, Run Everywhere” (although many usually say “Write Once, Debug Everywhere”). When an application runs on an operating system, it is generally desired that the application works with the environment. Prior to Java 1.4.2, Wheel-Mice generally worked everywhere except in Java Applications, making this seamlessness less seamless.

Novell has an article about porting Java Applications to SuSE Linux. It is an interesting read, but I am not sure of their audience though. Never-the-less, the document does highlight the fact that Linux has two different facilities for Copy and Paste, viz. Selection and the Clipboard, and indicates that Java only supports the latter. Confusingly enough, the article starts off by stating that SuSE Linux supports 1.4.2, but the article really focuses on Java 1.3.1.

Either way, Java 1.4.2's java.awt.Toolkit's getSystemSelection(), I am glad to say, does the trick. But this being said, it is unfortunate the number of applications that are said to use the 1.4.2 release that still do not support it. One such application is Borland's JBuilder, which hopefully JBuilder 2005, which integrates more development tools into JBuilder (including parts of it's OptimizeIt Suite and a Code Analysis feature, probably similar to IntelliJ Idea 4.5), will also integrate this, too.

This is not to say that this is only a Java-related problem. By far not; Nvu, an HTML editor based on Mozilla' Composer, also has this issue, which is surprising, since Mozilla is well integrated.

Porting to a new operating system is more than just making it run there; it must be well integrated into the system. These little minor details make software inconsistent, and therefore, harder to use, even though, at least for this issue, it is not a lot more coding on your side.

Filed In