[RSS]

New and Noteworthy in Milestone 10


General

  • New default color scheme and some additional schemes. Please let us know which what how you like it here: 74730
  • New shortcuts. Feedback should go to: 91277
  • Syntax coloring for .sh, .bat, .diff and .mf files added.

App Server Interaction

There is a screencast of many of these features, in action.

Java

  • Improved performance
  • New Hints
  • New Refactorings
  • Go To File
  • JavaDoc tooltips in Navigator window

Ruby

  • Find Usages

http://blogs.sun.com/tor/resource/ref4.png

http://blogs.sun.com/tor/resource/ref2-small.png

  • RHTML support
    • Debugging (breakpoints, stepping etc. in RHTML files)
    • Code completion
    • Go to declaration
    • Find Usages
    • Rename

http://blogs.sun.com/tor/resource/rhtml-completion-small.png

  • Improved code completion - attributes, Rails migrations, models and views now include all the expected methods, etc.
  • Enhanced RDoc rendering; embedded Ruby and RHTML code fragments are now syntax highlighted

http://blogs.sun.com/tor/resource/improved-rdoc1.png

  • Debugger enhancements (global vars, watch view, locals view)
  • Encoding support (projects now have an encoding property)
  • Basic RSpec and ZenTest support (More Info), basic RJS support
  • JRuby 1.0 is bundled

Redesigned Find / Replace dialog(s)

new-find-dialog.gif

GUI Builder

  • Limited integration with refactoring

Debugger

  • Method breakpoints and field breakpoints are annotated in editor gutter via triangles. They can be submitted in a similar manner to line breakpoints, on method headers and field declarations.
MethodFieldBrkp.png
Here you can see a method breakpoint on getTypes() method and a field breakpoint on classes field.
  • Condition for number of iterations added into breakpoint dialogs.
LineBreakpointDlg.png
There are three possibilities: break when the hit count equals to, is greater than or is a multiple of the given count number.
  • Attach Debugger menu item is added as a drop down menu from Debug Main Project button
drop-down.png
  • Non-modal solution of an informational dialog, which is displayed when a breakpoint is hit in another thread during step operation.
NonModalStepInterrupt.png

Profiler

  • Timed & Triggered HeapDump / Take Snapshot Profiling Points, Load Generator Profiling Point
profiler_1.png
  • Alt-F8 shortcut for new Profiling Points
profiler_2.png
  • GC activity visualization
profiler_3.png
  • Profiling overhead visualization in Select Task Panel
profiler_4.png
  • Heapwalker info panel
profiler_5.png
  • Navigation in Heapwalker (Back & Forward buttons)
  • Attach Profiler action added as a drop down menu item to Profile Main Project action in IDE toolbar

VCS

  • Versioning Output is a new window component showing output of versioning commands in a structured way. Currently only the CVS Update laverages this component. After an Update operation finishes the Versioning Output window lists all files that have been updated, removed or conflicted during the update. You can also open listed files in editor or resolve conflicts from there.
vcs-output-m10.png

Web

  • Struts 1.3.x files are recognized by the IDE
  • Java refactoring is propagated into the faces-config.xml files.
  • JSF 1.1 library was replaced by JSF 1.2 (license issue, JSF 1.1 was under Sun Binary Code License, JSF 1.2 is under CDDL) 95947

Visual Web

  • Migrate Visual Web Java Refactoring to Retouche 90533
  • Implement Package and folder level Rename and Move refactoring. 104532
  • Visual Query Editor is now accessible for DB Explorer. 90447
  • Visual Consumption of EJB 2.1 in Visual web apps 90455 (See limitation below.)
  • Completion of Web Services consumption - test node action, make it confirm to the web service functionality in NetBeans
  • User dir migration from Creator 2, 2u1, NB 5.5 or 5.5.1 to NB 6.0 99740
  • Resolving data source references 94804
  • DataSourceNaming 88871
  • Completion of Page flow editor functionalities - dealing with mutiple faces-config files. 97896
  • Performance improvements
  • Open source rowset implementation used by Visual Web
  • More Ajax enabled components from Project Woodstock - RadioButton Group, Checkbox Group, Listbox, TextArea, Anchor, Hyperlink, ImageHyperlink, Calendar. Project woodstock Road map

Known Issues for M10 Milestone

  • Visual Consumption of EJB 2.1 in Visual web apps 90455 This feature allows the web apps to consume Session EJBs hosted on app servers such as Sun, WebLogic, and WebSphere with a limitation. Web app itself needs to be test deployed on a Sun app server for the automatic configuration to work. If you want to host the web app in another app server, you must manually configure the EJB reference to JNDI binding which is container specific. When deploying your web app on a production server using the export war feature, this manual configuration step is part of the Java EE deployment process which is container specific.
  • Web Service consumption in Visual web applications using Tomcat 6.0. 108524. The user must manually add the JAX-WS 2.1 library to the project after adding a web service client from the Runtime tab. On JDK 6, the user must also copy the jars in $nbInstallDir/java1/modules/ext/jaxws21/api to $tomcat6dir/endorsed.
  • Resource conflict on Glassfish when page uses 2 datasources from same database. 107697. This causes 2 connection pools with the same name to be defined in the sun-resources.xml. As a result deployment fails. Workaround is to change the pool name at the following 2 locations in the sun-resources.xml file:
    1. Second connection pool entry.
    2. Second jdbc resource definition.
  • Cannot Deploy application after a new page is added 107526. Workaround is to try deployment again and it will work.
  • Null Pointer Exception on creating J2EE 1.4 project with 'Do not Append Library' option selected On Tomcat 6 107275. Workaround is to create such a project with JSF 1.1 library being defined instead of using the 'Do not Append Library' option.

Web Services

  • Expose partner services to RESTful web service developers. These partner services when DnD create URIs for clients to consume these services. There are 5 StrikeIron services added in the palette by default. The yahooNewssearch is also a new REST based service we expose via the palette.
NewAndNoteWorthyMilestone10/palette_snapshot.png
  • REST Test client now accepts query params to invoke URIs.
TestClAddParams.png
  • RESTful services can be created without tie into any entity classes so someone can have a skeleton service created applying some patterns which they can add business logic into.
For details, see: SimpleWsldRestServiceDemo TaxDataCompleteResource.png
  • JAXB wizard support for web, ejb and java projects.
JAXBWiz.png
  • Web Services creation visual editor allows to rename operations.
  • JAXRPC web service and clients are now working as they were for Nb 5.5
  • Editor hints for web service annotations are enabled.
WsHints.png
  • Visual designer has new look and feel.
WsDesigner1.png
  • Visual designer allows selection of operation and Remove opearation button listening to the selection.
WsDesigner2.png
  • WSIT related features are shown in Policy Configuration and they operate as checkboxes.
WsDesigner3.png

XML

  • Added XML Schema move Refactoring.
  • Added XML Schema refactoring preview for Rename/Move/Delete.
  • Improved code completion on XML Schema documents.
  • Lot of other bug fixes.

WSDL

  • The ExtensibilityElementTemplateProvider SPI is now public.97238
  • Added GoTo WSDL or Design view from source view 97533
  • Property sheet is automatically updated when moving through source in the source view.
  • Improved the performance of the tree view. Fixed some memory leaks.
  • Keyboard shortcuts to validation work 84846
  • Other bug fixes.

Positional ordering attributes in XML layers

Rather than relative ordering attributes, NetBeans 6 uses numeric sorting. This affects NetBeans module development. For details, see: FolderOrdering103187

Improvements in JMS area

  • New Message-Driven Bean dialog
NewAndNoteWorthy/newMDB.png
  • Send JMS Message dialog
NewAndNoteWorthy/sendJMSMessage.png

Output window

  • Input for running program can be entered directly into the output window. No more separate text field for input.

Self-signing for Java Web Start

  • Java Web Start support in IDE allows to sign jar files of java project by self-signed certificate. Key-pair is generated during project build.
  • If you already have own keystore, you might find useful the faq about using own keystore.
self-signed.png

Improved Directory Chooser

  • Directory chooser for opening projects now uses tree for directory structure, supports double click to project open, fast keyboard path completion and has improved look especially on GTK.
  • Chooser on Windows
dirchooser_win.png
  • ...and on Ubuntu Linux
dirchooser_ubuntu.jpg

Plugin Manager understands plugins composed from several single modules

  • A group of modules can be declared as a once plugin (aka feature) on Update Center. Plugin Manager handles it as a standalone plugin.
  • It allows to distribute IDE components like Ruby, SOA etc. as plugin in Plugin Manager. An user can complete her/his IDE installation by Plugin Manager.
  • Plugin Manager handles also standalone NetBeans modules detached from standard IDE components.
plugin-manager-features.png
  • Moreover if someone would like to manage NetBeans modules regardless plugins she can choose NetBeans modules view in Plugin Manager's Settings tab.

Editor

  • Editor will switch to the most recently used document tab when a document is closed

UML

  • Source Code Synchronization
In addition to being able to save generated source code into new source files, you now also have the ability to merge generated source code into existing source files. There are two types of source code that is possible in a source file. The first type is source that is generated via the UML code generation. The second is source code that is written by the user. There will be times when the user may want to override the code that is generated using the templates. To give the user the ability to override the code that is generated, annotations are used to direct code generation what areas are controlled by code generation.

uml_cg.png

The above example demonstrates a Java method that is generated by the code generation mechanism. The source code synchronization process will replace the entire method 'foo', when synchronizing the source code. To override the implementation of 'foo', the UML Marker must be removed. The source code synchronization process will no longer replace the 'foo' method during code generation.

The UML Marker has the following format:

    // <editor-fold defaultstate="collapsed" desc=" UML Marker "> 
    // #[regen=yes,id=DCE.4C30BCAA-9D8D-2473-35A2-FD0A9A5724E2]
    // </editor-fold> 
Source code entered by the user can also be included in the synchronization mechanism by inserting an abbreviated form of the marker:
    // #[regen=yes]
    public int i;
followed by reverse engineering of the source file. The attribute "i" will remain synchronized between model and source during reverse engineering and code generation actions.
  • Code generation now uses Freemarker templates to generate code. Users are now able to edit the templates. Access the Code Generation templates area via Tools > Templates and expand the UML folder in the NetBeans Template Manager dialog.
  • Code generation is now extensible. The new Domain Templates panel has been added to the UML Options window. The template panel allows users to manage the templates that can be used during UML code generation. Each template has a set of properties that can be assigned. The properties determine when a template can be executed.

uml-domain-template.png

  • A Domain Templates category has been added to the UML project customizer. The Domain Templates category is used to specify the templates that are to be executed during code generation. Each UML project can use a different set of templates.

uml-codegen-props.png

  • Preferences have been moved from the Advanced Options dialog to the standard Options dialog, accessible via Tools > Options.

uml-options.png

Known UML Issue for Milestone 10

  • Issue 108119 Changes to a UML project is lost when the UML module is deactivated or uninstalled.
    • Workaround: Save the UML project before deactivating or uninstalling the UML plugin. This action also saves all modified diagrams, if any.

SOA

  • Predicates support in XSLT
  • Improved transformmap schema in XSLT
  • Copy/Paste in BPEL diagram
  • Support BC-to-BC connection in CASA Editor 104539
  • Add JavaEE project support in CASA Editor 104542
  • Support typed environment variables in JBI Manager 101680
  • Support cross-project reference in Composite Applicaiton 101683
  • Move DCOM, FTP, HL7, IMS, JDBC, SMTPMAIL, EMAIL, MQ, MSMQ, SAP, SMTP and SNMP out from NetBeans SOA Pack to OpenESB. You can get those bindings if you use the NetBeans from the OpenESB installer, which can be downloaded here.

BluePrints module moved

The Java BluePrints Solutions Catalog (available from the Help menu) and the corresponding sample projects were moved from the standard NetBeans distribution to the Update Center.

Mobility

Abilities Navigator actions

New behaviour and actions added to Abilities Navigaotr Panel

1) Multiple configurations can be selected. In such case navigator will show intersection of abilities assigned to selected configurations. Abilities with different values will be shown with "Multiple different values" as a value. Selected configurations must be part of the same project

2) Right click on abilities navigator shows a popup with following actions

a) Add - adds an ability to all of the selected configurations

b) Remove - remove set of selected abilities from all of the selected configurations

c) Copy - copy set of selected abilities to internal buffer

d) Paste - paste abilities from buffer to a set of selected configurations

New abilities panel actions

Project Configurations nodes actions

New actions added to configuration nodes with obvious meanings

running on single selected configuration

1) Run configuration

2) Debug configuration

running on multiple selected configurations even across different projects

3) Build selected configurations

4) Clean&Build selected configurations

5) Clean selected configurations

6) Deploy selected configurations

New project configurations actions

NSIcom support

Mobility Pack now supports NSIcom CreME CDC platform. You can download emulator from NSIcom web page - Developer Support package. Use Java Platforms Tool to add CreMe to the list of available CDC platforms

MIDP-1.0 compliancy analyzer in Visual Mobile Designer

The Visual Mobile Designer has a new analyzer. It inspect a design and reports all component, properties and values which are not available in MIDP-1.0.

Deployment on Nokia devices

Requirements

  • Compatible Nokia phone (I've tested the functionality on 6230)

Installation

Install Nokia PC Suite and have your phone connected. Follow the instructions to setup the connection - use cable, infrared or bluetooth.

Using the deployment

Start NetBeans and create a new or open an existing project.

Create predefined deployment profile using Tools | Mobile Deployment.

scr1.jpg

Open project properties. Choose deployment profile. You can also override the deployment settings.

scr2.jpg

Close project properties. Right click on the project and choose Deploy.

scr4.jpg

The application gets deployed

scr3.jpg

On the phone, open the application browser and run the application

scr5.jpgscr6.jpg

Windows Mobile deployment

Windows Mobile Deployment

available since 6.0M10

Installation

Test version available also for NetBeans 5.5.1

Windows Mobile Device

You need Windows Mobile 5 device with Sun CLDC/MIDP VM installed. The device has to be connected to the computer using cable or wireless and ActiveSync has to be running.

How to use it

You have to create a mobile project first. I recommend to make it working in the Wireless Toolkit before deploying on the device. Then open project properties go to the Deploying tab and choose Windows Mobile Deployment as a deployment method:

scr1.png

You can leave default value for Application Location - it is a folder on the device where jar and jad files will be copied into, or you can specify another one.

Once you have set up the deployment method, right click on the project and choose deploy:

scr2.png

The application gets uploaded and installed on the device. Follow any instruction that appear on the device screen:

scr3.png

Run the application using Start | Programs | Sun Java | <application>

scr4.png

SVG Composer

Major upgrade of SVG Viewer supporting basic editing of SVG content. The SVG Composer is not intended to be a replacement for SVG authoring tools, it is rather targeted on a developer who needs to adjust and modify existing SVG graphics and make it work with his/hers code.

Extended viewer features

  1. Zoom control(zoom in/zoom out/fit on screen/exact zoom ratio)
  2. Extended navigator - it is possible to display only the tree nodes that meet some criterion. The parent nodes of those nodes are displayed as well to keep hierarchy unchanged, but they shown in gray color. Currently the two following filters are available:
    1. Show only the elements with defined id
    2. Show only animation elements
  3. Animation support - it is possible to start specific animation; useful for animation with indefinite begin time, typically triggered from script
  4. ViewBox support - it is possible to see area outside the SVG viewbox. There are two display modes related to this.
    1. Show view box only - only the area defined as 'viewBox' trait on the svg element is displayed - the rest is clipped out
    2. Show whole image - the whole image is displayed and the viewBox boundary is displayed as thing dark gray rectangle

Editing features

  1. Content locking - to prevent unwanted changes user can lock the content. Initially the content is locked and user can unlock it using the toolbar button. The unlocked state is indicated by pressed toggle button and pencil icon displayed in bottom left corner of the canvas. Note: No animations are available when content is unlocked.
  2. XML text editor, which can be used for direct editing of SVG source. Changes done in the editor are reflected in the visual view when it is available. The visual view and the editor are not meant to be displayed at one time.
  3. Quick link from navigator to editor - double click on on a tree node in navigator takes user into editor with caret placed at the beginning of the element that node represents
  4. Quick link from visual view to editor - double click on an element takes user into editor with caret placed at the beginning of the XML tag.
  5. SVG Shapes Palette - a simple palette window associated with the text editor can be used to drag various svg elements into the text editor
  6. Basic shape manipulation in visual view:
    1. Select - the polyline outline is drawn around the selected element
    2. Move/translate - the selected element can be moved/translated to some other position. When mouse is hovering over the selected element, the mouse cursor changes and element can be moved to some other location by dragging.
    3. Rotate - the selected element can be rotated. When mouse cursor is near the "rotate handle" (represented by a small red circle initially at the top-right corner of an element outline) of a selected element, the mouse cursor changes and element can be rotated around its pivot by dragging.
    4. Scale - the selected element can be resized/scaled. When mouse cursor is near the "resize/scale handle" (represented by a small red box - all the outline corners other than rotate handle) of a selected element, the mouse cursor changes and element can be resized/scaled by dragging.
  7. Insert graphics - user can insert SVG image located on the filesystem into existing content. The conflicting identifiers are reassigned so that one image can be inserted several times. The inserted image is wrapped in <g> envelope and user can manipulate (e.g. move, rotate, scale, delete) with image as if it was a single SVG element.
  8. Delete - remove selected element or inserted graphics
  9. Layer control - it is possible the change drawing order of individual elements. The following actions are available
    1. Move to top
    2. Move to bottom
    3. Move backward
    4. Move forward
Note: The element nesting level is not affected by any of the above operations, so it is possible to change drawing order only of the element siblings. For example the "Move to top" may not be always sufficient to move selected element on the top of ALL elements in the SVG image.

Export features

  1. Ability to save images to JPEG and PNG
  2. Ability to set compression level when saving to JPEG
  3. Ability to specify progressive mode when saving

SVG Components

  1. New class SVGPlayer has been introduced
    1. SVGPlayer contains many utility methods for manipulating underlying DOM tree (e.g. startAnimation, rotate, move, scale, ...)
    2. all DOM manipulation methods have also thread safe variant (i.e. the manipulation is always done in the document udpate thread)
  2. SVGAnimatorWrapper has been deprecated - please use SVGPlayer instead of SVGAnimatorWrapper


Dropped Features for NetBeans 6

  • JSF Portlets support
  • Ability to Import HTML Pages into Visual JSF framework
  • Project-specific libraries

Back to NewAndNoteWorthy

Attachments

CityStateResource.png Info on CityStateResource.png 80242 bytes
JAXBWiz.png Info on JAXBWiz.png 38854 bytes
LineBreakpointDlg.png Info on LineBreakpointDlg.png 11766 bytes
MethodFieldBrkp.png Info on MethodFieldBrkp.png 25663 bytes
NonModalStepInterrupt.png Info on NonModalStepInterrupt.png 45763 bytes
TaxDataCompleteResource.png Info on TaxDataCompleteResource.png 107774 bytes
TestClAddParams.png Info on TestClAddParams.png 68427 bytes
WsDesigner1.PNG Info on WsDesigner1.PNG 60835 bytes
WsDesigner1.png Info on WsDesigner1.png 60835 bytes
WsDesigner2.PNG Info on WsDesigner2.PNG 53727 bytes
WsDesigner2.png Info on WsDesigner2.png 53727 bytes
WsDesigner3.PNG Info on WsDesigner3.PNG 55673 bytes
WsDesigner3.png Info on WsDesigner3.png 55673 bytes
WsHints.PNG Info on WsHints.PNG 63079 bytes
WsHints.png Info on WsHints.png 65085 bytes
dirchooser_ubuntu.jpg Info on dirchooser_ubuntu.jpg 57609 bytes
dirchooser_win.png Info on dirchooser_win.png 52036 bytes
drop-down.png Info on drop-down.png 7697 bytes
new-find-dialog.gif Info on new-find-dialog.gif 16694 bytes
palette_snapshot.png Info on palette_snapshot.png 128886 bytes
plugin-manager-features.png Info on plugin-manager-features.png 29807 bytes
profiler_1.png Info on profiler_1.png 15817 bytes
profiler_2.png Info on profiler_2.png 27094 bytes
profiler_3.png Info on profiler_3.png 7506 bytes
profiler_4.png Info on profiler_4.png 25867 bytes
profiler_5.png Info on profiler_5.png 23135 bytes
self-signed.png Info on self-signed.png 15358 bytes
uml-codegen-props.png Info on uml-codegen-props.png 24284 bytes
uml-domain-template.png Info on uml-domain-template.png 36370 bytes
uml-options.png Info on uml-options.png 34919 bytes
uml_cg.PNG Info on uml_cg.PNG 15367 bytes
uml_cg.png Info on uml_cg.png 15367 bytes
vcs-output-m10.png Info on vcs-output-m10.png 3880 bytes