NetBeans IDE 5.0

Released: January 31st, 2006

NetBeans IDE 5.0 introduces comprehensive support for developing IDE modules and rich client applications based on the NetBeans platform, the new intuitive GUI builder Matisse, new and redesigned CVS support, Sun Application Server 8.2, Weblogic9 and JBoss 4 support, and a lot of editor enhancements.

Here are some of the cool features in this release:

Developing NetBeans Modules

NetBeans IDE offers comprehensive support for building IDE plug-in modules and rich client applications on the NetBeans platform. A lot of support for extending the IDE and creating applications on top of the NetBeans Platform is provided. Using brand new templates in the New Project wizard and New File wizard, you can generate all the basic files and code you need. The Project Properties dialog box lets you configure API dependencies, MANIFEST.MF entries, and other project metadata. Code completion and other standard support provided by the Source Editor is available for plug-in modules too.

Matisse GUI Builder

Matisse GUI Builder Screenshot -- Using Guidelines to Place GUI Elements

Matisse extends the current NetBeans IDE 4.1 Form Editor to provide simple and intuitive layout of GUIs without having to understand the complexities of Swing layout managers. As you drag and drop components into a form, the IDE automatically suggests allignment, spacing, and resizing constraints. Unlike GridBagLayout, the positioning is deteremined by the look and feel of the platform the app runs on. Resize it, localize it, run it on a different platform; with Matisse, your GUIs will always look great.

For more information, follow the Matisse Learning Trail or quickly watch the Matisse flash demo.


Server List Screenshot

As in the previous release, the Sun Java System Application Server 8.2 is supported, but that's not all -- you can now also register JBoss 4 and WebLogic 9 with the IDE. When you do so, you can deploy your web applications to these servers, just as if you were deploying to the Sun Java System Application Server. On top of that, support for the Tomcat Web Server has been enhanced -- it is now much easier to work with this server, for example, you can set Tomcat's JVM Options right inside the IDE.

Web Frameworks

Although you've always been able to use JavaServer Faces (JSF) and Struts in the IDE, it's never been easy. In NetBeans IDE 5.0, the New Project wizard has been extended so that while you create a web application, you can specify that you want to use JSF, Struts, or both. When you make this selection, the IDE adds all the JSF and Struts libraries to your application, as well as all their configuration files. While using the configuration files, you have code completion to support you as well as the ability to have menu items create all the tags the configuration files need. The New File wizard has also been enhanced -- you can choose templates for the creation of JSF Managed Beans, Struts Actions, and Struts Form Beans. And what if you have existing web applications? Can you add JSF and Struts support to them? Yes, of course. Use the new "Frameworks" panel in the Project Properties dialog box.

Web Services

Webservices Web service consumption has been enhanced so that you can now create web service clients in J2SE applications too. All the libraries needed to create and deploy a web service client are bundled with the IDE, so that the web service client created in a J2SE application can be deployed without a problem. Also, in web applications, you can now call web service operations directly from a JSP page, so that you don't even need to create a servlet anymore. Finally, a new wizard has been added -- you can now create a WSDL file directly in the IDE and use it to generate your web service files.

Code Completion

Editor code completion is now faster and has been enhanced to offer you more choices for code generation. In addition to completing classes, methods, and fields, you can generate the following code snippets through the code completion box:

In addition, you can type camel case abbreviations to generate code (for example, typing AIOO with the code completion box open would generate ArrayIndexOutOfBoundsException). You can now also complete the text and close the pop-up by pressing period, semicolon, or comma. Method parameters are now shown in a tooltip.


NetBeans 5.0 greatly expands on the number of refactoring actions available. New refactorings include:

Miscellaneous Editor Enhancements

Error Stripe Screenshot

The following are some general editing improvements. See the sections above for information on code completion improvements and new refactoring operations.

  • Java hints (marked with a lightbulb icon) that help you generate code
  • Component palette for dragging and dropping of HTML, JSP and database code snippets onto a JSP or HTML page
  • An error stripe that marks whether your file is compilable or not and provides an overview of all errors, warnings, TODOs, and bookmarks in your source code.
  • Surround selected statement with a try-catch construct
  • Improved new SQL editor with syntax highliting
  • Cutting and pasting of selected text in the editor window via drag&drop
  • Easier adding of XML DTDs and schemas for use in code completion and XML validation
  • XML navigator and improved automatic indentation and code folding in the XML editor
  • Ability to choose from pre-configured shortcut sets and color schemes (created in accordance with well-known environments such as Emacs).

Version Control

CVS Versioning Window Screenshot

CVS support has been totally reworked to integrate into your work-flow. The IDE automatically recognizes CVS working directories and lists all changed files in the Versioning window. The versioning support is also integrated with both the projects system and refactoring actions.

Updating and committing files are the most common activities you perform with CVS: You can launch these actions from the main IDE navigation windows (Projects, Files, and Favorites) or from the Versioning window. Badges and color coding show the current status of files, folders, packages and projects. With the Diff command you quickly diff a single file or an entire package, folder, or project. The new CVS support makes it even easier to share your project metadata so that you can share not only your sources, but your IDE settings as well.


Debugging window

Debugging has been enhanced to be better integrated in the Source Editor. You can now enable and disable breakpoints in the Source Editor and access breakpoints properties from Editor annotations. The Variables window has been enhanced for easier display long arrays. The Evaluate Expression dialog box lets you evaluate any expression on the fly, and you can now run to any method in the Source Editor. There is also an Ant debugger that you can use to step through the target calls in an Ant script and examine the status of properties as the script is executed. The JUnit test window now displays results as an expandable tree. You can now use code completion in the New Watch and Breakpoint Customizer dialog boxes.

Other Usability Improvements

IDE configuration has been streamlined and made much more user-friendly. The scanning of project classpaths now happens in the background, so you don't have to wait for scanning to complete to use the IDE. The look and feel on MacOS X has also been greatly improved.

New NetBeans Add-on Packs

NetBeans Developer Collaboration lets you discuss and edit code with other developers live over the network. Use the Mobility Pack to write, test, and debug applications for Java™ Micro Edition platform (Java™ ME platform) technology-enabled mobile devices. The NetBeans Profiler helps you optimizing you application's memory and CPU usage.