| Deployment |
|
|
Blog: Using
Java Web Start to Launch NetBeans
Wouldn't it be nice to be able to show a Java source file in NetBeans
by clicking on a JNLP link in the browser? Now you can. |
|
Jan 2006 |
Digging
into Java Web Start
This java.net article is the second in a two-part series by Joshua
Marinacci. The
first article covered creating and deploying a simple app using
Java Web Start. The second article shows what you need to do to make
your application run safely and feel professional. Topics covered
include security, optimized downloads, and polishing your program.
|
|
Sep 2005 |
Getting
Started with Java Web Start
This java.net article is the first in a two-part series that Joshua
Marinacci promises will tell you everything you need to know to start
using Java Web Start. The first article leads you through creating
and deploying a simple app. The second
article will cover security, optimized downloads, and how to polish
your program. |
|
Aug 2005 |
Distributing
Sun Java System Identity Server Applications Using Java Web Start
Take a walk through the Java Web Start technique of distributing Java
applications developed with Remote Client API for Sun's Identity Server
6.0. |
|
Apr 2004 |
 |
| Beans |
|
|
Long-Term
Persistence for JavaBeans using XML, Part 4
This article describes the XMLEncoder and Persistence Delegates.
|
|
Jan 2002 |
Long-Term
Persistence for JavaBeans using XML, Part 3
This article describes the XML schema so that implementations other
than XMLEncoder/XMLDecoder can be used to write and read compatible
files. |
|
Jun 2001 |
Long-Term
Persistence for JavaBeans using XML, Part 2
Update to the Long-Term Persistence project |
|
Jan 2001 |
Long-Term
Persistence for JavaBeans using XML, Part 1
This article lays the ground work for the development of the a new
persistence mechanism. |
|
Nov 1999 |
JavaBeans
Technology: Unlocking The BeanContext API
Read this article to learn more about the Extensible Runtime Containment
and Services Protocol API (BeanContext, for short) and see how this
API is implemented in the BeanBox in the Beans Development Kit (BDK)
1.1 and how you can develop dynamically connecting Beans. |
|
May 1999 |
JavaBeans,
Part 3: Testing Beans in the BDK BeanBox
The third part shows how to use the BeanBox application provided with
the JavaBeans Development Kit (BDK) to test Beans you have built.
The BeanBox provides important feedback that lets you determine if
your Beans will behave as expected in third-party builder tools and
application programs. |
|
Feb 1997 |
Java
Beans, Part 2: Writing a Simple Bean
The second article in the series presents code that shows you how
to build simple Beans, and how to package them for distribution as
JAR files. |
|
Nov 1996 |
Java
Beans: Part 1: Introducing Java Beans
This is the first in a series of articles introducing JavaBeans. This
article presents Beans from a conceptual point of view, and introduces
you to component technology, properties, methods, events, and application
builder tools. |
|
Nov 1996 |
 |
| Graphics & Imaging |
|
|
Blog: A
Reusable BuddyList Component
How to build a generic buddy list cell renderer. File under Advanced
JList Hacking. |
|
Feb 2006 |
Smooth
Moves
Earlier Chet Haase blogged
about some of the factors that contribute to choppy animations. Part
Two of the discussion is his just-published java.net article, Smooth
Moves, which examines some of the solutions to animation problems.
|
|
Feb 2006 |
Blog: Make
Your Animations Less Ch-Ch-Choppy
This is Part One of a two-part series. Part One examines some of the
factors that contribute to choppy animations. Part
Two examines some of the solutions to those problems. |
|
Feb 2006 |
Blog: Using
Java2D and timingframework to animate a button
A good looking GUI needs a bit more than just fancy graphics. It needs
life, animation! Java SE provides everything you need to make your
Swing apps swing, but there's an easier way. |
|
Feb 2006 |
Blog:
400
Horsepower: Image I/O Improvements in Java SE 6
Image I/O performance enhancements in Java SE 6... (In)action shots
of the Java Client team... And my first external Java SE 6 fix submission. |
|
Jan 2006 |
Blog: Drag
and Drop Effects and Java2D Performance
While writing a new Swing/Java2D demo Romain Guy ran into very interesting
issues with pictures painting. |
|
Oct 2005 |
Learning
Java 2D, Part 2
The Java 2D API allows you to create some stunningly high-quality
graphics. This article, part 2 in a series, discusses ways to use
the Java 2D libraries to manipulate and display images using the BufferedImage
and VolatileImage classes, as well as techniques for performing filtering
operations |
|
Oct 2005 |
Blog: Physics
Laws in Swing Applications
A nice way to improve the user experience is to mimic real world physics
laws in your GUI. |
|
Sep 2005 |
Blog: Java2D/JOGL
Interoperability
Details (and screenshots) on the improved Java2D/JOGL interop story
in the latest Java SE 6 and JOGL builds. |
|
Sep 2005 |
Learning
Java 2D, Part 1
The Java 2D API can help you create some stunningly high-quality
graphics. This article, part 1 of 3, helps you become familiar with
shapes, lines, and the Java 2D rendering pipeline |
|
Jun 2005 |
Introduction
to Java Advanced Imaging (JAI)
This introduction to Java Advanced Imaging walks you through using
the JAI API to manipulate a JPEG image. |
|
Jun 2005 |
VolatileBufferedToolkitImage
Strategies
Ever wondered what kind of image to use in your application?
Or what method to use in creating it? This article attempts to address
this challenging topic |
|
Feb 2005 |
Intermediate
Images
Learn how to create and use temporary images to speed
up complex rendering tasks; cache those operations in images and just
call drawImage() instead. |
|
Sep 2004 |
Lighting
a 3D Scene
Learn how to light up your Java3D applications in this colorful
Tech Tip. |
|
Jul 2004 |
Image
Handling Basics
When doing animation, you will find that the Image class of the java.awt
package serves as the base. Learn about the basics of image handling
in this article. |
|
Jan 2004 |
High
Performance Graphics with Java2D
Learn about how the new pipeline architecture. |
|
Oct 2002 |
 |
| Native Desktop Integration |
|
|
New
System Tray Functionality
Learn about the coming system tray functionality in Java SE 6. |
|
Nov 2005 |
Communicating
with Native Applications Using JDIC
Learn about the basics of using JDesktop Integration Components. |
|
May 2005 |
Introducing
JDesktop Integration Components, Part 2
This article discusses the SaverBeans SDK, which lets you
write platform-independent screensavers. SaverBeans is an incubator
project under the JDesktop Integration Components (JDIC) project |
|
Nov 2004 |
Introducing
JDesktop Integration Components, Part 1
This article by Joshua Marinacci is all about the java.net/JavaDesktop
JDIC project, which lets you integrate Java apps into native environments
without writing native code |
|
Oct 2004 |
Introducing
JDIC
A good overview on this new project on java.net |
|
Jun 2004 |
 |
| Internationalization (I18N) |
|
|
Internationalization:
Understanding Locale in the Java Platform
To be effective, an application should respect the user's language
and geographic region. Learn how to use locale-sensitive objects to
customize your Java technology application with the use of language,
country, and variant codes |
|
Sep 2005 |
Supplementary
Characters in the Java Platform
Learn how supplementary characters are supported in the Java platform,
and how to make your application ready to support them |
|
May 2004 |
Using
Input Methods on the Java Platform
Read this article to learn how to use input methods in your Swing
text components. |
|
Apr 2004 |
 |
| Text, Fonts, & Printing |
|
|
Understanding
the Caret and Highlighter Interfaces in Swing's Text Package
Learn how the Caret and Highlighter interfaces control the view of
the current text. |
|
Dec 2005 |
LCD
Text: Anti-Aliasing on the Fringe
This article covers generic technology that is not specific to Java
2D, or even the Java platform. But because we just integrated this
capability into Java SE 6, and we thought it would be worth going into
a little more detail on the subject. |
|
Aug 2005 |
Blog: Chet
Haase - Phil's Font Fixes
The bits are in: we've just integrated LCD Text support into build
39 of Java SE Java SE 6. |
|
Jun 2005 |
Validating
Text And Filtering Documents
Validating and constraining text input has always been an interesting
problem for those creating user interfaces for the Java platform.
This article discusses the various mechanisms to accomplish this on
various version of Java SE. |
|
May 2005 |
Printing
JTables
This tip shows you how to use the new J2SE 5.0 facilities to print
a simple JTable. |
|
Mar 2005 |
Using
EditorKit and JEditorPane
This Tech Tip discusses several ways to load content into the Swing
editor components. |
|
Jan 2004 |
 |
| Using Swing Components |
|
|
Blog: Thomas
Pavek - Getting to know GroupLayout, part 1
GroupLayout is a new layout manager that was developed as a Swing
Labs project in conjunction with Matisse, the new GUI builder in NetBeans
5.0. Though the layout manager was originally designed to suit the
GUI builder needs, it is also quite handy for manual coding. This
blog will help you get up to speed with how GroupLayout works and
shows you how you can start building GUIs using GroupLayout, whether
you choose to use Matisse or write your own code. |
|
Feb 2006 |
Blog:
Enable
Dropping into Empty JTables
Shannon Hickey shows how to enable dropping into empty JTables with
a single method call in Java SE 6, or a simple override in earlier versions
of J2SE.
|
|
Jan 2006 |
Filtering
JList Models
Learn how to do Java SE 6 JTable-style filtering for JList in J2SE 5.0. |
|
Dec 2005 |
Blog: JPasswordField
with an empty echo character: the fix
Learn why Scott Violet's last
attempt at a password field with an empty space echo character
failed and how to fix it. A demo is thrown in for good measure. |
|
Dec 2005 |
Blog:
Variations of JPasswordField
Learn how to create alternate views of JPasswordField. In the proess
I'll cover portions of Swing's text architecture. |
|
Dec 2005 |
Customize
Your JList Display
Swing's JList and JComboBox are great components for
displaying object lists, but they don't always display user-friendly
text by default. This article shows you how to customize how objects
are displayed in JList components |
|
Nov 2005 |
Sorting
& Filtering Tables
Learn how to use Java SE 6's new sorting and filtering JTable APIs. |
|
Nov 2005 |
Blog:
TabComponents
in action
Java SE 6's tabComponent feature will be the most preferable and clear
solution for customizing JTabbedPane. With it, you can add a close
button, use a radio button in the tab, and more. |
|
Nov 2005 |
Blog: Customizing
Ocean Gradients
Learn how you can customize the gradients drawn in ocean; from the
garish to the minimalist, anything is possible. |
|
Sep 2005 |
Blog: Synth
Week, File Chooser
JFileChooser is a very complex component. One of its major drawbacks
was its poor support for Synth in Tiger... |
|
Sep 2005 |
Blog: Synth
Week, Custom Lines Style
Improving Synth doesn't mean following the path opened by other look
and feel, we try to do more. |
|
Sep 2005 |
Blog: Synth
Week, Components Orientation Support
Tiger introduced Synth, a cool and easy way to create custom look
and feel. Unfortunately, it has some limitations. Discover how Java SE 6
addresses one of the most important ones. |
|
Sep 2005 |
Blog: Synth
Week, Load Themes From Anywhere
Better late than never, here is the first installment of the Synth
Week. If you like cool features and crappy drawings, click the link! |
|
Sep 2005 |
Blog: Synth
Week, Bonus Day
Next week will be Synth week on this blog to present you the new features
integrated to Java SE 6. And this is a bonus presentation. |
|
Sep 2005 |
Blog: Scott
Violet - Ocean, Gradients and Image Caching - oh my
Get the skinny on how Ocean graidents are drawn and how we were able
to make Ocean perform as well as Steel. |
|
Sep 2005 |
Blog:
Synth Studio
When Romain Guy started working at Sun, he wrote three tools to help
create Synth look and feels for Swing... check out those tools in
this blog |
|
Sep 2005 |
Printing
JTables
This tip shows you how to use the new J2SE 5.0 facilities to print
a simple JTable. |
|
Mar 2005 |
Getting
To Know Synth
The latest Core Java Technologies Tech Tips describes how
to use the Synth look and feel, a skinnable look and feel first released
in J2SE 5.0. |
|
Oct 2004 |
Customizing
JColorChooser
In this Tech Tip, you'll learn how to customize areas in the color
chooser component. |
|
Aug 2004 |
The
Synth Look & Feel
This article provides an overview of a new look and feel, Synth, which
can be completely customized without writing code, enabling even non-programmers
to create new look and feels. |
|
Mar 2004 |
JFileChooser
and Best Practices for Exception Handling
As is the case with all things in Swing, if you don't
like the look of something, you can change it. Learn how to change
the look and behavior of the JFileChooser component. Also get insights
into best practices for exception handling. Both topics are covered
in the current issue of the Core Java Technologies Tech Tips. |
|
Feb 2004 |
High
Performance Frequently-Updated JTables
One common type of application features a JTable with frequently updated
data. This style of application is often found in the financial industry,
but it can crop up in other industries, as well. This article explores
techniques for improving the performance of this style of application,
affectionately called Christmas tree applications because the rapid
updating of their GUIs resembles blinking lights on holiday trees. |
|
Dec 2002 |
What's
coming in JDK1.4
An old preview article of Swing features additions in J2SE 1.4. Yes,
it's old, but still has lots of interesting tidbits about the new
features. |
|
Nov 2000 |
All about Swing Borders
This article explains how Swing's border classes work, and provides
some handy tips for creating, implementing, and managing borders in
Swing applications. |
|
May 1998 |
 |
| Windows & Dialogs |
|
|
The
New Modality API in Java SE 6
Learn how Java SE 6 allows greater functionality
for modal dialog boxes, supporting document, application, and toolkit
modality to ease the user's experience. |
|
Jan 2006 |
Blog:
JFrame.add()
contentPane Pain: The Complete Story
Learn why early on in Swing's evolution we added a runtime exception
that warned developers not to write JFrame.add(myComponent). |
|
Nov 2005 |
Creating
Wizard Dialogs with Java Swing
This article by Robert Eckstein discusses how to create a
wizard — a dialog with a number of panels that the user progresses
through. There is, naturally, source code and an example that you
can download |
|
Feb 2005 |
Customizing
Window Adornments
Customizing Window Adornments shows how to use this 1.4
feature of undecorated windows |
|
Jan 2005 |
Let
There Be Z-Order
This tech tip discusses how to use the setComponentZOrder
method (added in 5.0) to control component layering within a container |
|
Jan 2005 |
Changes
in Working With ContentPane
This tech tip shows how the 5.0 feature of being able to
avoid calls to getContentPane works, and points out that you can't
always ignore the content pane. |
|
Nov 2004 |
 |
| SwingLabs: projects
under research |
|
|
Blog: JIC:
Java Icon File Format
Tired of "dealing with a dozen png representations of a single
(logical) icon as separated files"? Tired of writing/debugging
the code to treat multiple files as a single logical unit? Well, Daniel
Leuck, SwingLabs, and Ikayzo bring you JIC : the simple multi-resolution
cross-platform icon format for Java! |
|
Oct 2005 |
Blog: Zoom
Pictures with SwingLabs FX
SwingLabs FX module provides new Swing components to create interesting
effects. See how to use the new ZoomableImagePanel together with other
effects. |
|
Sep 2005 |
Calendar
Components in SwingLabs (was: JDNC)
In this tip, you will use the Java APIs for JDNC to create simple
calendar widgets. |
|
Jun 2005 |
Introduction
To Tables With JDesktop Network Components (JDNC)
In this tip you will use JDNC to read tab-separated data from a file
and display it in a table. You will put headings on the columns and
select a subset to display. You will then filter the rows to display
only those rows that meet a specific condition. Finally, you will
sort this list and decorate alternating rows in different colors. |
|
Apr 2005 |
Introducing
JXMonthView!
XMonthView is a component that displays a monthly calendar, very similar
to what you would see in applications such as “Evolution”
and “Outlook”. |
|
Feb 2005 |
JDNC:
More For Less
An update on JDNC, provides an overview of the JDNC problem space
and technology. |
|
Jun 2004 |
Actions
Framework
This article presents an architecture that simplifies the construction
and management of Swing's action-based components. The architecture
allows you to easily create tool bars, menus, and popup menus from
an XML configuration file as well as simplifies the process of connecting
these components to your application. |
|
Jun 2003 |
Introducing
JDNC
This white paper provides an overview for the SwingLabs project named
JDNC, aimed at making developers more productive in creating rich,
responsive Web-enabled desktop clients using Java SE. |
|
Jun 2003 |
 |
| Putting
It All Together |
|
|
Blog: Architecting
Applications 3: the Controller
This is the third blog in a series on architecting applications. In
the first blog I discussed the application I'm going to develop, how
it would be architected, and briefly went over the model. In the second
blog I motivated the need for an Application class that is suitable
for typical Swing based Apps, as well as the functionality it should
provide. In this third installment I'll go over the role of the controller
as used in the MVC architecture. As promised, this blog has a runnable
demo. |
|
Mar 2006 |
Blog: All
hail the PropertyChangeListener
Often when building an app you need to hook multiple components together
so that when one component changes others must do something. When
you are building custom components, there's often the temptation to
build a custom set of listeners to go along with it. Josh recommends
you try property change listeners instead. |
|
Feb 2006 |
Blog: Debugging
Swing, Part 3
The long way to find a good solution. |
|
Feb 2006 |
Blog: Drag
And Drop
Shannon Hickey introduces new support in Java SE 6 for choosing
drop actions in the Swing Drag and Drop API. |
|
Feb 2006 |
Blog:
Location-Sensitive Drag and Drop in Java SE 6
Prompted by a question on his recent Swing Drag and Drop blog entry,
Shannon Hickey talks about location-sensitive Drag and Drop in Java SE 6.
|
|
Jan 2006 |
Blog: First
Class Drag and Drop Support in Java SE 6
Shannon Hickey introduces major enhancements to Swing Drag and Drop
in Java SE 6, and also recounts his recent once-in-a-lifetime visit
to Saint Petersburg, Russia, with pictures from the trip. |
|
Jan 2006 |
Desktop
Java Features in Java SE 6
Learn about some often-requested features that will be a hit with
Java SE 6 programmers: setting file and directory permissions, obtaining
disk space, adding components to tabbed pane tabs, as well as the
inclusion of the SwingWorker class |
 |
Jan 2006 |
Blog:
Architecting
Applications 2: the Application class
This is the second blog in a series on architecting applications.
In the first blog Scott discussed the application, how it would be
architected, and briefly went over the model. This second blog will
motivate the need for an Application class that is suitable for typical
Swing based Apps, as well as the functionality it should provide.
|
|
Jan 2006 |
Blog:
Architecting
Applications 1: the model
This is the first of a series of blogs on creating a Swing app, Scott
Violet motivates the app, the architecture the app will use, and quickly
touches on the model. In addition it will show how easy it is to use
beans persistence as a way to save and restore beans. |
|
Jan 2006 |
Blog: Debugging
Swing, Part 2
Why automatic dispatching Swing methods to Event Dispatch Thread is
"not so good" |
|
Jan 2006 |
The
Next Wave of GUIs: Project Matisse and NetBeans IDE 5.0
Scott Violet and Tomas Pavek discuss Project Matisse, a GUI builder
for JFC/Swing technology on the NetBeans IDE that makes Swing development
easier than it's ever been. |
|
Dec 2005 |
Splash
Screens & Java SE 6
Learn how to display a high-performance splash screen while your program
is loading. |
|
Nov 2005 |
Blog:
Debugging
Swing, Part 1
Do we need to make it easier,or is it pretty good already? |
|
Nov 2005 |
Blog:
Changes
to Actions in Java SE 6 (Java SE 6)
Read
up on the changes to Actions in 1.6
|
|
Nov 2005 |
Blog:
WeakReferences
and Actions
In Scott Violet's last
blog he delved into why one might use Actions. In this article
learn how Swing's component support Actions, and why you should know
about WeakReferences. |
|
Nov 2005 |
Blog:
The
Usefulness of Actions
This blog gives an overview of Actions, why you might use them, and
covers a bit of the changes to Actions in 1.6 |
|
Nov 2005 |
New
Splash-Screen Functionality in Java SE 6
This Sun Developer Network article by Oleg Semenov and Dana Nourie
tells you how to use the Java SE 6 splash screen feature to display
a simple window even before the virtual machine starts. The article
covers both how to show a splash screen with no code and how to, if
you wish, write code that updates the splash screen once the VM has
started. |
|
Oct 2005 |
Blog: Romain
Guy - Synth Subtlety, Style that ComboBox
Synth is quite often subtle to use. I just spent a couple of hours
trying to fix a bug and it appears it was not a bug. |
|
Sep 2005 |
Accessibility
and the Java Access Bridge
Assistive technologies are hardware and software solutions that help
people with physical impairments interact with computers. Learn more
about the built-in Accessibility features in Java SE. |
|
May 2005 |
Thread
Handling In Swing
Learn how to use Swing components in a threaded environment. |
|
Apr 2005 |
Timing
is Everything
This article by Chet Haase covering the basics of using Timers in
Java and also adds interesting functionality to the timing facilities |
|
Feb 2005 |
Asserting
Control Over the GUI: Commands, Defaults, and Resource Bundles
Hans Muller wrote this article about defining Swing application behavior.
It's tells how to combine low-level J2SE primitives, such as Actions,
ResourceBundles, and UIDefaults, into an action framework that is
appropriate for moderately large desktop Java applications |
|
Jan 2005 |
Using Swing & The Java 2D API To Create Cool User Interfaces
This article demonstrates the ease of plugging into the Swing paint
system, and presents some of the many advanced rendering techniques
that are possible with just a few lines of 2D code |
|
Feb 2003 |
Painting
With Fill Objects
Details on the Swing paint mechanisms using Java2D |
|
Sep 2002 |
Using
Dynamic Proxies to Generate Event Listeners Dynamically
Learn how to generate Action Listeners Dynamically |
|
Jan 2000 |