Java 2 Software Development Kit

The Java 2 SDK is mow available for Linux. Mr. Foxwell tells us all about it.
Major New Features of the Java 2 SDK

The Java 2 SDK includes the Java Foundation Classes, also known as the “Swing” class library. This library extends Java's original Abstract Window Toolkit, used for building graphical user interfaces. The Swing library provides a rich set of components for GUI development. The jdk1.2/demo/jfc directory contains more than 100 example source files that demonstrate the library's capabilities, including the SwingSetApplet demo, which shows all the components at work in one big applet. The SwingSetApplet includes full source code.

Figure 1. SwingSetApplet

Look in the jdk1.2/demo/jfc/Java2D directory, and you'll find the remarkable Java2DemoApplet, which shows off Java's 2-D imaging APIs, used to control image rendering, fonts, animation and printing.

One of the most significant changes to the Java platform concerns security. Earlier versions treated Java applets and applications differently, allowing applications unrestricted access to any system resource, while confining remotely loaded applets to an all-or-nothing “Sandbox” model. An applet in the old security model could not access client system resources and could not connect to any system other than its originating host. This provided a strong security model for remotely loaded executable code, but limited an applet's utility.

Java 2's new security model is based on a configurable policy file that can define security domains for each user, group and program component. This file, called the codeBase, tells the JVM where programs must be loaded in order to execute and determines who can run the program using digital signatures to authenticate the program's origin.

You can find a sample global policy file for all users in the jdk1.2/jre/lib/security directory. This file may be customized, and the JVM can be directed to use the policy file for all code execution permissions. An especially important point to note is that programs need not be modified in order to control their execution; the JVM and policy files determine what can run and who can run it. Take a look at http://java.sun.com/security/ for details and examples of Java 2 security.

Java Programming on Linux

If you are looking for professional Java 2 program development tools for Linux, you are again at the mercy of the tool developers, who generally release their products for Windows first and for other platforms later. However, if the development tool is written in 100% Pure Java, you are in luck. Blackdown's Java Tools for Linux link lists more than a dozen Java IDEs, including several that have been updated to work with Java 2. Check out NetBeans at http://www.netbeans.com/ and Together/J at http://www.togetherj.com/ for two excellent programming tools.

Other Java APIs

Sun has licensed source code for additional APIs to the Blackdown team, including code for Java 3-D, Java Media Framework, Java Advanced Imaging and Java Sound. Furthermore, Sun is now making sources available for much of the Java core technologies, including the new Jini software, under its Community Source Licensing Model. While not quite the same as the GNU General Public License, this model should make it easier for future ports of Java APIs to Linux and other platforms.

Linux developers are already at work adapting their solutions to Java 2. For example, Douglas Lau and Trent Jarvi have implemented the Java Communications API, used for access to serial and parallel ports. You can download the necessary libraries from http://jarvi.ezlink.com/rxtx/.

Learning the Java Programming Language

If you are new to Java programming, your background will determine how quickly you can learn it. Programmers already experienced with object concepts through C++ or Smalltalk can usually become proficient in Java after a few weeks of study and practice. If you are an “object challenged” C or FORTRAN programmer, you will need help learning to think and design using objects; taking a course in object-oriented programming will get you started. Beginners should study Sun's Java Tutorial or Bruce Eckel's Thinking in Java, while experienced object programmers can jump right in with Core Java by Horstmann and Cornell.

______________________

Webcast
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers

Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.

Learn More

Sponsored by AMD

White Paper
Red Hat White Paper: Using an Open Source Framework to Catch the Bad Guy

Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6

Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.

Learn more about catching the bad guy in this free white paper.

Learn More

Sponsored by DLT Solutions