Handling of JEE6 Profiles

JEE6 introduces concept of profiles and defines one profile: JEE6 Web Profile - a subset of full JEE6 spec.

The IDE needs to distinguish whether project is targeting full JEE6 or Web profile for several reasons:

  • to show relevant application servers to which a project can be deployed to
  • to shows only relevant IDE features

There are (at least) two possible approaches how to handle JEE6 Full Profile versus JEE6 Web Profile.

(1) Traditional approach would be to let user choose Full versus Web in New Web Project wizard and then respect that choice. Specification version is currently not editable so user would not be able to amend their choice.

(2) Alternative appoach would be to create new JEE6 Web Project preconfigured to use Web Profile. All IDE features regardless of project's profile would be available and selecting a feature which is not supported by the project's profile would result into automatic upgrade of profile (switching from Web profile to Full). If desirable a UI asking user to confirm the upgrade can be implemented.

Variation on previous solution would be to detect whether project requires full or web profile based on project's source code (that is presence of message driven bean or a bean with remove interface would mean that full JEE6 is required). This check should be implemented where appropriate. For example it cannot be performed during project opening for performance reasons but it could be checked during project's deployment to application server. It also should be used in New Web Project with Existing Sources wizard.

First solution expects that user is aware of differencies between full and web profile and know what they want while second solution just follows whatever user is doing without forcing user to make any initial decision.

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