NetBeans 6.8 -- New and Noteworthy
This is the complete feature set for NetBeans 6.8. Stabilization will proceed on these.
Java Enterprise Edition 6 support
Support for development of applications for Java Enterpise Edition 6. The Java EE 6 compliant server bundled with the IDE is GlassFish v3 (promoted build 57).
Following features are available :
- project creation supports JEE6 and JEE6 Web Profile
- web.xml is optional
- web.xml and web-fragment.xml wizards added
- GUI editor for web-fragment.xml
- New File wizards updated to generate classes with Servlet 3.0 annotations instead of updating web.xml
- EJBs enabled in web project
- EE6 profiles handling
- JSF framework supports Facelets
New editor features for authoring Facelets documents are described in its own chapter below.
- project creation supports JEE6 spec version
- added Singleton session support
- support for optional Local Business interface
- support for embeddable container provided by EE6 server
- JAX-WS upgraded from 2.1 to 2.2
- JAX-RS upgraded from 1.0 to 1.1
- JAXB upgraded from 2.1 to 2.2
- Metro 1.4 library upgraded to Metro 2.0 and used instead of JAX-WS where appropriate
- support for JPA 2.0
Java Server Faces 2.0 support (Facelets)
- XHTML files are recognized as facelets files if proper namespace is declared
- coloring, code folding, error checking etc. works for JSF tags
- code completion for JSF libraries including documentation
- tag autoimport feature - all tags from available JSF libraries are offered in the completion regardless whether they are declared or not. If such undeclared tag is completed the declaration is automatically added to the document root tag.
- completion for core facelet libraries (ui and composition components)
Expression Language support
- code coloring and completion is available for expression language
- completion offers implicit object, jsf managed beans and their properties
Facelets libraries support
- Parsing of facelets libraries (.taglib.xml files)
- Basic code completion for declared components even w/o tag library descriptor
JSF components palette for XHTML files
The components palette is hidden by default. You can open it by
Window > Palette if you want.
- There is a new JSF category in the palette for XHTML files. It appears only for files located in projects with a webmodule and with JSF support enabled.
- One may add new components there by adding them into the system layer into XHTMLPalette folder.
- JSF Form from Entity and JSF Data Table from Entity components generate XHTML code for view/editable form/table of a selected Entity class. Code is generated using a template which can be customized to user's preferred style.
Palette Code Completion
This is a generic html editor feature but also affects JSF development. Currently there are just two JSF palette items but some other may come in the future.
- HTML code completion allows you to insert palette items very quickly. The completion works in html text without a prefix ...
- ... or with a prefix. The prefix is removed automatically if you decide to complete the selected item.
- Once you select an item from the list a palette item customizer appears. You can file it with your preferred values or keep the defaults
- Finally after confirming the customizer the item text is inserted at the original completion position
Insert Code actions for JSF palette items
- Now you can use insert code action to insert JSF Form and JSF Data Table. The effect is the same as if you dragged them from the palette.
Composite components support
- Code coloring for composite components libraries defined in the webmodule /resources folder
- Code completion for the composite components tags and attributes
- Hyperlinking to the composite components source files
JSF components error checking
An infrastructure for simple error checks/hints added to the JSF editor. Some error checks for jsf components have been added, other will come later.
A list of available checks follows:
- whether the library matched by the tag prefix contains such component/tag. (The library mapped to the fc prefix is named components so the weird message is not a bug but just a coincidence)
- the tag contains all required attributes
- all the attributes are defined in the component's interface
- existence of undeclared components
- presence of taglib declaration w/o usages
- declared library exists
- You can complete the namespace of the available facelets libraries
Generate JSF pages from Entity classes
JSF pages from Entity classes wizard was updated to generate CRUD (create, read, update and delete) pages for selected entity classes:
- XHTML pages are generated instead of JSP
- EJB facade classes are generated for entity manipulation
- generated pages are localizable
- pages are generated using templates which can be customized to user's preferred style
- We now use archetype catalogs for easier navigation in the New Project wizard
- Improved support for Groovy and Scala languages
- User feedback
- Add dependency exclusion from dependency graph
- There is a new item "Exclude" in pop-up menu of the artifact box, which adds proper dependency exclusion(s) to the project pom.xml automatically.
- Use POM's Checkstyle plugin configuration to bootstrap IDE's formatting rule
- Java EE 6 is now supported in Maven projects. New archetypes for Java EE 6 are available and used in Maven new project wizard, as shown in following picture.
- Comfortable selection of target Application Server, useful especially for multi module Maven projects. When running (deploying) Web application or EJB for a first time, typically no deployment server is set. New UI allows user to choose Maven project where to store deployment server setting.
- New ability to update Maven POM file according to informations read from Kenai project. For every Maven project that lives on kenai.com, there is an action "Update from Kenai" in right-click menu on pom.xml editor. Informations like project description, url, mailing lists, developers, SCM system, issue tracking system are retrieved from enclosing Kenai project and generated into Maven POM.
- PHP 5.3 support including(syntax highlighting, code completion, code folding, navigator)
- Symfony Framework support
- PHPUnit improvements
- FTP/SFTP improvements
- Ignored Folders in PHP projects
- PHP Application from Remote Server
- PHP syntax coloring in YAML files
Groovy & Grails
- Groovy 1.6.4 supported and bundled
- Methods introduced via AST tranformations visible in code completion
- Much better code completion for variables and method parameters
- Reliable Grails process exiting on Windows platform
- Code completion in SQL editor now works additionally for DELETE, DROP and UPDATE statements. Not only tables and columns are completed but also SQL keywords. In SELECT sub queries code completion is offered in correct context.
- Issue 71231 - The Run File action works for SQL file now
- It is possible to change display name of connection node to shorter and more readable name. It can be provided while creating a new connection or changed in node properties afterwards anytime.
- New release notifications are implemented. Users of the previous releases (starting with 6.7) will be notified about the new release (6.8 and above) when it is ready.
- Plugin files which require executable permissions can now be set using nbm.executable.files project property and the required permission would be set when module is installed/updated using Plugin Manager or build using harness.
New options for Java task list
- New pane was added to Tools --> Options --> Editor --> Hints --> Java allowing you to influence the speed of refreshing of the task list after you save a file in the editor.
- There is a brand new embedded browser based on Mozilla XULRunner available on Update Center for MS Windows.
- The Browser is disabled by default. To enable it use Tools > Options and select 'Embedded Mozilla Browser' as Web Browser.
- The Embedded Browser is used to display all links (that would be normally opened in the external browser) inside the IDE as Editor tabs.
The Embedded Browser in IDE is very new thing and we would like to gather a lot of feedback about it. Should you find some issue then please file a bug report.
Embedded Browser requires 32-bit JDK.
Web Preview for HTML and CSS
- Embedded Browser (EB) component is used for HTML file preview that is opened in Output area and user can preview changes while editing (simply by saving the file) without jumping between external editor and NetBeans IDE.
- EB is also used for CSS editor where it replaces previous HTML rendering component, so user can see CSS changes in real-world internet browser.
Note: Both preview can be used only on Windows after downloading Web Preview and Embedded Browser modules from UC
- Upgraded bundled JRuby to 1.4
- Ruby 1.9 debugging support
- Run/Debug File with arguments
- Support for running/debugging files that are not part of a project
- Improved handling of inherited methods in rename refactoring
- Possibility to specify arguments for Rails servers
- Navigation support for ActiveRecord associations
- RSpec 1.2.9 support
- Faster and more accurate type inference
- Improved navigation for accessor methods created by attr, attr_accessor and attr_reader
- Support for creating Rails 2.3.4 apps with dispatchers
- Ability to uninstall a specific gem version.
- Type assertions for method return types, use :return:=> (type) in the method's rdoc, e.g.: #:return:=>String
- gdbserver attach support
- attach to a process on the remote machine
- easy attach (one click attach to already running processes)
- Synchronization with remote host (uploading project files to the remote host) became more than 10 times faster.
- For this reason, "Secure Copy" synchronization is made the default one. This means that the user won't be asked for path mapping any more (though it is still possible to invoke the path mapper explicitly).
- New Thread Microstates indicator and Thread Details view (Solaris and Open Solaris specific)
- Buttons on indicators to open detail view
- New I/O usage indicator and
- Viewport for indicators
- Time interval selection
- Metrics annotations
IDE consumes 2 times less memory for big projects and parsing speed is improved by 30-40%!
Mark Object feature allows to give a name to any object in the shown variables tree and then use this name in expressions (in the expression evaluator or in a watch).
Kenai Support (integration with Kenai.com)
- New UI for working with Kenai projects (Kenai dashboard), with more features and more info displayed.
- "My projects" visible in the dashboard all the time, easy to open to start working with.
- Project members, their roles and online status.
- More details about Kenai project can be opened.
- Project search enhanced to show more details and to offer recent/featured projects.
- Improved navigation between Projects view and Kenai dashboard view.
- Extended and simplified wizard for sharing projects on Kenai - creating new Kenai project and importing sources. Starting with Kenai is easier now.
- Possibility to change Kenai server (e.g. to netbeans.org).
Instant Messaging and Online Presence
- Possibility to start a 1:1 chat with other users on Kenai, auto-managed contact list of co-workers (users with common projects).
- Can see online status and start chat with people from any place in the IDE where a user name appears:
- In Kenai dashboard listing project members or in the contact list.
- Other places like: issue reports, commit history, versioning annotations, etc.
- Links to files, line of code, issues and stack traces can be easily added to the chat and sent.
- Project chat rooms show notifications about changed files on the server. The user is informed when the currently edited file is remotely changed (in the repository).
Issue tracking integration
- Complete JIRA support (see more details below).
- Improved indication of changes in query results (unseen and changed issues highlighted in the list).
- Task list integration - add the issues you work on to the Task list.
- Usability improvements of Bugzilla issue editor.
Issue tracking integration now supports JIRA. The JIRA plugin is available on Update Center, it gets downloaded automatically when you try to use it, or you can get it the from Plugin manager (Tools > Plugins in the main menu).
- JIRA Plugin allows you to
- Execute queries, save issue queries; sort and/or filter query results.
- Open, edit and create issues.
- Open, save or upload issue attachments.
- Log work done on issues.
- JIRA Plugin supports all features that you know already from Bugzilla support:
- Simplified patch manipulation - a patch (diff) created in the IDE can be attached to the selected issue easily.
- Navigation extensions:
- Clicking on a stacktrace in an issue jumps directly to the source code.
- You can open issue from wherever the IDE references it - from a source code, commit messages in version control history, from versioning annotations etc.
- Commit hooks:
- An issue can be automatically closed by a commit (with additional info about committed changes added to the issue).
- You can let the commit dialog add issue information into a commit message.
- Editor navigation improvements include: click through navigation, Go to Type, Find Usages.
- Editor Hints include Semantic support and other dynamic and static hints.
- Faster, more accurate code completion.
- Refactoring support.
- Debugger rewritten to use common debugger infrastructure in NetBeans bringing better extensibility and performance.