What's new and noteworthy in completed and upcoming NetBeans 6.1 IDE milestone builds. Milestones Schedule.
One of the main 6.1's themes was improving the IDE's performance, with special focus on the most visible areas. Here are the main achievements:
- Faster cold start and improved startup sequence. Up to 40% faster (with a project opened). Opening projects does not block startup. Go to Type dialog available even during post-startup scanning of sources.
- Various optimizations to reduce I/O and file access (touching disk), improving responsiveness in many situations, especially on slower filesystems (e.g. on network).
- Incremental parsing in java editor speeding up code completion and improving responsiveness of the editor especially with large files (see below).
- Improvements in JSP parser (caching, memory management, update strategies), leading to faster code completion and editor.
- Improvements in Visual Web designer -- faster page opening and table drop, lower memory usage, fixed memory leaks, and more (see below).
For more details see the performance press release and performance FAQ.
Window System
- small semi-transparent image is shown when dragging a window
- in-active floating windows are transparent
- floating window snap to each other and to screen edges
- palette visibility is now per-document type, if user closes the palette window when e.g. editing an HTML file, the palette will be still visible when designing a form
Sharability of Projects (aka Sharable Libraries)
This new feature in default Java, Web and all J2EE project types allows to create projects that share definitions of libraries. That in turn allows to create self-contained projects or set of projects that can be built from the command line, on continuous integration servers and by users of other IDEs without problems.
You can decide on project creation if you prefer sharable and self-contained projects or the old style of projects.
Sharable project gives you greater control over how libraries and jars required by your project are handled:
- project has its own shared libraries:
- custom file chooser allows to decide how jar/folder will be referenced:
- classpath shows files the way they are referenced:
Web and J2EE projects have option of creating library from application server jars which can be distributed alongside of your project:
You can also easily migrate your old projects to become self-contained in the project's Properties dialog.
Javadoc and sources association
So far only Java libraries allowed to define Javadoc and sources for jar files. Now any jar item on project classpath can be associated with its Javadoc and sources too:
JSF CRUD Generator
With this feature, you can generate a JavaServer Faces CRUD application from JPA entity classes. In M2, all relationships are supported: 1:1, 1:M, and M:M. To try the feature, begin with entity classes, select the project in the Projects window, then do File -> New File, and choose Persistence > JSF Pages from Entity Class.
New MySQL Support in Database Explorer
This feature allows you to register a MySQL Server, view databases, view, create, and delete databases, easily create and open connections to these databases, and to launch the administration tool for MySQL. This also allows you to easily create NetBeans sample databases so that following tutorials, blogs, and so on is significantly easier.
For more information see the UI specification
Java Beans Support is Back
Support for Java Beans is back!
Bean Patterns in Navigator
There is a new view in the Navigator.
Generate Property
Generating bean property is easy.
BeanInfo Editor
BeanInfo Editor is back.
Inspect Members and Hierarchy Widnows
Inspect Members and Hierarchy actions now work when the caret in the Java Editor is on a Java class for which there is no source available. The obvious limitation is that you cannot jump to the source of elements for which there is no source. Similarly the JavaDoc is not shown in the JavaDoc panel.
In the following screenshots the source for sun.net.spi.nameservice.dns.DNSNameService is not available, yet it is possible to see it's members and hierarchy.
Inspect Members Action
Inspect Members
Inspect Hierarchy Action
Inspect Hierarchy
Javadoc Code Completion
Editing of javadoc comments is more convenient with code completion.
Incremental Parsing in Java Editor: Faster Code Completion
We made changes in the 6.1 java editor to reparse and reattribute only modified method rather than the whole java file. This leads to significant performance improvements. When the user types into the method only the top level method is reparsed which decreases both parse+attribute time and the time needed by tasks (hints, error marking, navigator) to recalculate changes. In short: Code Completion is now much faster!
More Details
Refactoring
Safe Delete is now available for packages. This enhancement allows safe deletion of a single package or recursive safe deletion of a folder.
Spring Framework Support
NetBeans 6.1 M2 introduces support for Spring Framework 2.5. The support builds on the original Spring NetBeans module, but adds editor features such as hyperlinking and code completion. The following features are supported:
- Bundled Spring Framework 2.5 library
- Wizards for XML configuration files and Spring Web MVC controllers
- Multiple configuration files can be arranged into groups
- Hyperlinking of bean and Java class names
- Code completion of bean names and Java classes and properties
- Refactoring of Java classes (find usages, rename, move, safe delete)
- Spring Web MVC framework support in the web project, making it easy to generate a skeleton Spring Web MVC application
Screenshots:
Code completion allows entering a Java class by its simple name:
Rename refactoring in action:
Ruby
- Infrastructure (Ruby Gems and Platform)
- full support for Gem Home and Gem Path setting
- automatic platform detection among the IDE
- smaller features like possibility to install gems from local disk
- a lot of bug fixes and stabilization
- Rails & Databases
- Bundled Rails upgraded to 2.0.2
- Improved server integration
- Database configuration improvements
- Debugging
- JRuby fast debugging out-of-the box
- classic (slow) debuggers were deprecated
Visual Web / Woodstock
- On-Demand Attribute Binding
- By default, new page and page fragment templates will not have binding' attributes in the JSP file and the corresponding properties in the Java file
- VisualWeb will not try to force insert a new component tag if the binding attribute is removed from the JSP source
- The user will be able to explicitly control the insertion and removal of binding attributes
- Performance Enhancements
- Numerous memory leak fixes
- Database metadata caching
- Faster page open and table drop (up to 50%)
- Woodstock 4.2 performance update
Module Development
- Test All action added to suites
- can create a new module without an XML layer
Mobility
- Better Mac OS X support
- SDK MpowerPlayer platform support
- SVG Custom Components
- SVG Composer is available from actions menu of the SVG Custom Components
- Stability
- Several issues resolved
- Documentation improvement
Screenshots:
SDK MpowerPlayer support
JavaScript
New JavaScript editor with feature like:
- Semantic Highlighting
- Mark occurrences
- Instant Rename
- Refactoring
- Quick Fixes and Semantic Checks
- Tasklist
- Code Completion and Type Analysis
- Go To Declaration
- Documentation
- Embedded Completion
- Browser Compatibility Info
- Embedding
- Open Type
- 6.0 Java Script Information
See more JavaScript.
XML and Schemas
New XML and Schema editor features:
- Re-added the missing DTD node actions (issue 90174)
- Sample XML generation from Schema (issue 91453)
- XML instance wizard improvements (issue 122439)
- Improvement in External schema/WSDL wizard (issue 94499)
- A new, improved (rewritten) Indentation/Formatting engine (issue 127319)
- A new, improved (rewritten) XML fold (issue 125055)
- Multiple fixes in Schema aware code completion(issue 122444)
- Few other performance improvements.
For more information, see plan page for 6.1.
Hibernate Framework Support
The Hibernate support plugin is now available on the Beta Update Center for NetBeans 6.1. The new plugin supports the following features:
- Hibernate is available as one of the supported frameworks in the New Web Application wizard
- Bundled Hibernate 3.2.5 library. The library is automatically added to the project when Hibernate framework is selected.
- Wizards for creating Hibernate configuration files and mapping files
- Visual editor for Hibernate configuration files
- Code completion
- Auto-completion of Java class names, Java class fields, database table names and column names when editing Hibernate mapping files
- Auto-completion of Hibernate property names and values (when possible) when eidting Hibernate configuration files
- Hyperlink support to let the user navigate
- From the configuration file to the mapping files
- From the Hibernate mapping files to the referenced Java classes.
- Refactoring of Java classes and fields (find usages, rename, move) modifies the Hibernate mapping files properly.
Screenshots:
Hibernate Framework in New Web Application wizard
Wizards for creating Hibernate configuration and mapping files
Code completion
Hyperlink support
Bundled Hibernate library
WSDL Editor enhancements
- Go To Definition 117508
- Enhanced Drag N Drop in partner view 121639
- Generation of partnerlinktype should be optional.95640
- Drag and Drop schema/wsdl file into wsdl editor from project explorer to import those into current wsdl.122178
- New Add Binding dialog. Refined Generate Binding and Service from port type. 121858
See spec for further details
Web Services: Axis2 Support
Support for web service creation based on the Apache Axis2 technology. The Axis2 Support plugin enables the creation of Axis2 web services in the J2SE Library or J2SE Application project. The user can create a web service either from a regular POJO class or from a WSDL file. The Axis2-1.3 library/jar files are automatically added to the project's classpath. The Axis2 service configuration file is also automatically created and modified with the required configuration entries. This significantly simplifies the steps needed for project configuration. The deploy action allows for the deployment of the Axis2. aar file (the archive for Axis2 web services) to the Axis2 environment. The Test Operation action enables the testing of web service operations immediately after deployment.
- 2 wizards implemented: Axis2 Service from Java and Axis2 Service from WSDL
- Support for various databinding technologies (ADB - Axis Databinding, XMLBeans, JiBX)
- Multiple actions implemented:
- Generate WSDL from Java
- Deploy to Server
- Edit WSDL
- Configure (Web Service)
- Refresh Service (the action is useful when java artifacts need to be regenerated after wsdl is changed)
- Test Operation in Browser
- Show Services in Browser
- code completion for Axis2 classes (useful in WS from WSDL approach)
- Axis2 Oprtions panel enables to specify the location of Axis2 environment, deployed in a servlet container
Web Services: SoapUI integration for Web Service testing and monitoring
Integration of the SoapUI Netbeans plugin with the Netbeans projects that support web services. This plugin enables the testing and monitoring of SOAP-based web services. A user can create and execute test cases for web services and clients, and even WSDL files. This can be performed within the project or in a separate SOAP UI testing project. It also allows for the monitoring of the web service SOAP traffic. Another exciting feature is the rapid development of "mock" web services (based on a WSDL) which can be used to test client applications.
- Web Service Tests (Request/Response)
Web Service Tests: Request-Response
|
SoapUIIntegration provides detailed information about this feature.
Support for Popular SaaS Services
The Web Services node in the Services tab has been enhanced to support SaaS (Software as a Service) services such as services provided by Google, Facebook, Yahoo, and YouTube. It enables Java developers to easily create mashup applications using those services. Developers can simply drag and drop operations under those services into a POJO, Servlet, JSP and RESTful web services and the IDE will generate all the plumbing code to access those services.
RESTful Web Services support is now in the standard distribution
The RESTful web service support in Netbeans is based on the JSR 311 standard. A wizard is provided to create REST services from JPA entity classes. You can also create REST services using one of the popular design patterns. Another wizard generates JavaScript client stubs that invoke these services. A popular feature is the test client that provides an interactive way to test and view the result of web service invocations.
This plugin has been available since Netbeans 6.0 but only as a downloadable plugin from the Update Center. In Netbeans 6.1, it is now part of the Netbeans standard distribution.