Revision as of 00:44, 7 June 2010 by Dkonecny (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)

J2EE Development Simplified in NB 6.9.NEXT

Author: DavidKonecny
Version: draft 0.0.1


Motto: Everything just works

Not according to feature coverage matrix but on real life usecases spanning several EE specifications For example user is developing a service which can be used via web browser or REST API and the service stores some data in a database and communicates with some other web services and EJBs. The IDE modular architecture and fact that separate Java EE specification are implemented by different teams should not have any impact on user's experience. Features from different modules should seamlessly cooperate and complement each other.

Another aspect to pay attention to in this release is how well features work outside of single user compile-debug cycle. For example an IDE feature can generate a unit test for an EJB and such test can be executed. But can such project be checked into versioning control system and just run if checked out by a continual builder or different team member? Features should be look at in broader scope and wherever applicable they should jut work.

Maven and Ant

In theory Maven and Ant are just build harnesses and therefore user should not notice any difference during daily coding in IDE regardless of what build system is used.

On the other hand it is not practical nor desirable to abstract IDE user from build harness. Ant and Maven are different and have their own specific features that should stay accessible to user. There is also no practical need for example to enable interproject dependencies between Ant and Maven. While possible in theory it is not a good practice IDE should suggest to users.

However, most of the IDE features should work regardless of underlying build system.

EE1.1: Compare Maven and Ant and create list of features (some candidates: handling of embeddable EJB container; handling of JPA annotation processor; Maven Deploy on Save for EARs; Maven 3; etc.)

GlassFish and Weblogic

Similar case like Ant and Maven. Most of the time the user should be abstracted from the underlying server and all IDE features should just work regardless of server. But there will always be differences between the servers and user should have access to these server specific features.

EE2.1: Enhance Weblogic support (deploy on save, datasources, web services, profiling, EE 6, JSF 2, JPA 2, link to source from output, etc.)

EE2.2: WebLogic cobundle

EE2.3: GlassFish 3.1 + WebLogic deployment descriptors


Deployment of EE Application or EE Module should just work. If user is developing EJB with Remote interface or Application Client or Web Services deployment should just work and project should follow best practice for files layout and development of these technologies.

EE3.1: fix EE Module deployment

EE3.2: handling of server shared libraries

EE3.3: GlassFish vs Weblogic deployment (eg. appclient GF deployment is hardcoded in AC project type)

Richer EE/Web spec support

EE4.1: Bean Validation support

EE4.2: CDI enhancements

EE4.3.1: JSF component: ADF

EE4.3.2: JSF component: Trinidad

EE4.4: CSS 3

EE4.5: HTML 5

EE4.6: JavaScript parser update

EE4.7: JSP editor architecture improvements

More helpful IDE

EE5.1: add intelligent hints/TODOs

EE5.2: EE refactorings

EE5.3: new EE samples/EE tutorials

Improve development of DB based Web Applications


JPA wizards: faster reading of tables by filtering by name


EE7.1: embeddable EJB testing works in all scenarios

EE7.2: testing of CDI based code works out of box

Other ideas

EE99.1 improve performance (scanning, Go to Type, code completion, etc.)

EE99.2 Ivy integration

EE99.3 Code coverage for Java

EE99.4 git

EE99.5 line wrap

EE99.6 bundle Oracle DB driver

EE99.7 Visual JSF editor - http://netbeans.org/bugzilla/show_bug.cgi?id=169820

EE99.8 OSGi webapps

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo