Monday Jul 07, 2008

Prevent the Generation of Fully Qualified Class Names

One big improvement in 6.5 that you're unlikely to hear about (anywhere else) is this very significant improvement (among several others) in the NetBeans Matisse GUI Builder—you can let Matisse generate code without fully qualified names. That's something I've wanted a long time, as well as others I've seen commenting on this online.

Simply choose Tools | Options | GUI Builder and then uncheck the "Generate Fully Qualified Names of Classes" checkbox. The result is that when you, for example, create a new JFrame, you'll get the following code:

package demo;

import javax.swing.WindowConstants;
import org.jdesktop.layout.GroupLayout;

 \* @author geertjan
public class NewJFrame extends javax.swing.JFrame {

    /\*\* Creates new form NewJFrame \*/
    public NewJFrame() {

    /\*\* This method is called from within the constructor to
     \* initialize the form.
     \* WARNING: Do NOT modify this code. The content of this method is
     \* always regenerated by the Form Editor.
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {


        GroupLayout layout = new GroupLayout(getContentPane());
            .add(0, 400, Short.MAX_VALUE)
            .add(0, 300, Short.MAX_VALUE)

    }// </editor-fold>

    \* @param args the command line arguments
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new NewJFrame().setVisible(true);

    // Variables declaration - do not modify
    // End of variables declaration


That's pretty cool and very welcome news. But there are several other options that you'll be able to set. So, here's the GUI Builder options tab in 6.1:

While here it is again, from a recent trunk build:

In other news. Read this great overview of the recent Manila Sun Tech Days by Randell, who was there to witness it all.

Thursday Jul 03, 2008

Further with Spring RCP

In addition to Getting Started with Spring RCP, I've now also written Getting Further with Spring RCP. It's pretty interesting what Spring RCP can do for your Swing applications. This part covers Spring RCP dialogs, the Form Builder, and rules based validation, with this result:

I'm looking forward to getting even further with it...

Wednesday Jul 02, 2008

Sources for Spring RCP Tooling Live on

I made a small typo (springrpctooling instead of springrcptooling), but aside from that glitch, it's all good and the sources are now available here, graduated from the Java Tools incubator:

Tuesday Jul 01, 2008

Win Cool NetBeans Stuff

Lloyd and I will be recording another NetBeans Podcast during this week. You can expect several new segments in the upcoming podcasts, such as a recurring segment by Jaroslav Tulach (the original NetBeans API architect) where he will share a tip related to his upcoming API Design book.

However, you have all of this week to... send the ANSWER to the previous NetBeans Podcast puzzler! The puzzler was set in the 42nd minute of the podcast and this time you can win... a copy of Rich Client Programming: Plugging into the NetBeans Platform (by Jaroslav, Tim, and myself, among others), together with a t-shirt.

Click the pretty picture below, listen to the puzzler and solve it and send the answer to nbpodcast AT netbeans DOT org.

<script src="" type="text/javascript"></script> <script type="text/javascript"> </script>

NetBeans Podcast Episode #43 (45 min, size: 46.5 MB)

For a complete breakdown of everything that happens during this podcast, see the related NetBeans Zone announcement.

Good luck!


Geertjan Wielenga (@geertjanw) is a Principal Product Manager in the Oracle Developer Tools group living & working in Amsterdam. He is a Java technology enthusiast, evangelist, trainer, speaker, and writer. He blogs here daily.

The focus of this blog is mostly on NetBeans (a development tool primarily for Java programmers), with an occasional reference to NetBeans, and sometimes diverging to topics relating to NetBeans. And then there are days when NetBeans is mentioned, just for a change.


« July 2008 »