Java Archive

Java Theory and Practice: Good Housekeeping Practices

"Putting your toys away when you are done is always a drag, but if you dont take the time to do it, you would have a huge mess over time. Garbage collection does an awful lot of the cleanup for us, and it simplifies development and eliminates entire categories of potential code errors, but some java resources still require explicit action on our part. This article discusses the limitations of garbage collection and identifies situations when you have to do your own housecleaning."

Building a JNI Universal Application with Xcode

"The Java Native Interface lets developers mix Java code with C or C++ source code. It provides access to platform-specific features that Java does not provide, so that Java applications on Mac OS X can take advantage of the wide range of powerful Apple-only technologies to provide the best possible user experience. Using the JNI, your Java application can access a user's Address Book, make Spotlight queries, take advantage of Core Image and Core Video, and leverage many other rich features unique to Mac OS X. This step-by-step tutorial explains how to use the JNI to integrate Java and C code using a single Xcode project with multiple targets."

Build Your Own Profiling Tool

"Profiling is a technique for measuring where software programs consume resources, including CPU time and memory. In this article, software architect Andrew Wilcox explains the benefits of profiling and introduces some current profiling options and their shortcomings. He then shows you how to use the new Java 5 agent interface and simple aspect-oriented programming techniques to build your own profiler."

What Is Java?

"We recently received an email asking for a 'What Is Java' entry on the O'Reilly Network What Is site. Who could possibly not know what Java is in 2006? After ten years of books, websites, and conferences, doesn't everyone know what Java is? Apparently not. After all, things have changed. For every dusty definition that speaks of applets and Just-In-Time compilers, there are new directions and new realities that have settled in, understood by many, yet not always completely documented."

Crossing borders: Exploring Active Record

"The Java programming language has had an unprecedented run of success for vendors, customers, and the industry at large. But no programming language is a perfect fit for every job. This article launches a new series by Bruce Tate that looks at ways other languages solve major problems and what those solutions mean to Java developers. He first explores Active Record, the persistence engine behind Ruby on Rails. Active Record bucks many Java conventions, from the typical configuration mechanisms to fundamental architectural choices. The result is a framework that embraces radical compromises and fosters radical productivity."

GNU Classpath 0.90 “A La Mort Subite” Released

GNU Classpath 0.90 "A La Mort Subite" has been released. Some highlights of this release: JTables can be rearranged and resized. Free Swing text components support highlighting and clipboard. Much improved styled text. Fast event dispatching and lower memory consumption. Better support for mixing lightweight and heavyweight components in AWT containers. GNU Crypto and Jessie cryptographic algorithms have been added providing ssl3/tls1 and https support. Unicode 4.0.0 support. GIOP and RMI stub and tie source code tools. XML validaton support for RELAX NG and W3C XML schemas. New file backend for util.prefs. Updated gnu.regexp from POSIX to util.regex syntax.

SWT, Swing, AWT: Which Is Right for You?

"Why is there more than one Java GUI tool kit? The best answer is that one size does not fit all, nor is there a one-size-fits-all GUI tool kit to be invented soon. Each tool kit offers advantages and disadvantages that make selecting one more appropriate, given your needs and intended audience. Read descriptions of each tool kit's basic features, and the pros and cons of using each."

The Year Ahead in Java Web Services

"2006 Is going to be a banner year for Web services in general, and for Java Web services in particular. New third-generation frameworks are being unveiled, which offer much better support for doc/lit SOAP as well as potential performance improvements. This article looks at both the state of Web services today and the major changes coming in 2006, and get an overview of how the new frameworks and technologies relate and interact."

JDK 1.6 (Mustang) GTK Look and Feel Screenshots

"A few months ago OSNews reported that the next version of Java (code name 'Mustang') will feature native GTK components for the Swing API. This got us excited since, quite frankly, Swing's GTK look and feel has always been quite dissapointing. We downloaded the latest release candidate of JDK 1.6 to see how well the Swing GTK look and feel looks, we were quite pleased with what we found."

Announcing the Mustang Regressions Challenge

"We are challenging you, the Java developer community, to find functional regressions between J2SE 5.0 (Tiger) and Java SE 6 (Mustang). The contest runs from Jan 31 through March 31, 2006, with prizes to be awarded in mid-April. You will find details on the contest home page and FAQ. The complete entry requirements are in the official legal rules governing the contest. You can enter the contest using the contest entry form. Prizes? There are five Ultra 20 workstations which will be awarded to the best regressions found during the contest. In addition all successful entrants, whose regression is entered into Suns internal database, will be given a t-shirt as our thanks to you for participating."