cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

Freeform EJB Module Project UI Spec

This document is a UI specification of freeform EJB module project.

Author: Jan Rojcek

$Revision: 1.2 $
$Date: 2005/07/25 23:03:50 $

Table of Contents:

New Project Wizard

Step 1: New Project - Choose Project

Figure: Choose Project wizard panel

+---------------------------------------------------------------------------------+
| New Project                                                                     |
+---------------------------------------------------------------------------------+
| Choose Project                                                                  |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Categories:               Projects:                                             |
| +-----------------------+ +---------------------------------------------------+ |
| | General               | | [e] Enterprise Application                        | |
| | Web                   | | [e] Enterpries Application with Existing Sources  | |
| |/Enterprise////////////| | [m] EJB Module                                    | |
| | Samples               | | [m] EJB Module with Existing Sources              | |
| |                       | |/[f] EJB Module with Existing Ant Script///////////| |
| |                       | |                                                   | |
| |                       | |                                                   | |
| +-----------------------+ +---------------------------------------------------+ |
|                                                                                 |
| Description:                                                                    |
| +-----------------------------------------------------------------------------+ |
| |                                                                             | |
| |                                                                             | |
| |                                                                             | |
| +-----------------------------------------------------------------------------+ |
+---------------------------------------------------------------------------------+

[e] - Enterprise Application project icon
[m] - EJB Module project icon
[f] - Freeform project icon

Components:

Step 2: New EJB Module with Existing Ant Script - Name and Location

+---------------------------------------------------------------------------------+
| New EJB Module with Existing Ant Script                                         |
+---------------------------------------------------------------------------------+
| Name and Location                                                               |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Select the folder that contains the existing project and locate the build       |
| script.                                                                         |
|                                                                                 |
| Location:     |_/oldPprojects/EJBModule_________________________| [ Browse... ] |
| Build Script: |_/oldProjects/EJBModule/build.xml________________| [ Browse... ] |
|                                                                                 |
| Specify a name and location for the new project.                                |
|                                                                                 |
| Project Name:   |_EJBModule1____________________________________|               |
| Project Folder: |_/users/me/EJBModule1__________________________| [ Browse... ] |
|                                                                                 |
| ------------------------------------------------------------------------------- |
|                                                                                 |
|                                                                                 |
| [x] Set as Main Project                                                         |
|                                                                                 |
+---------------------------------------------------------------------------------+
Components of this wizard step are:
  1. Location text field (o) - specifies the location of the EJB module being imported
  2. Browse button (old project) (b) - opens a file chooser with Select and Cancel buttons for selecting the location of the project being imported. Always enabled.
  3. Build Script text field (B) - specifies the build script file path (IDE provides default value if it finds build.xml within the Location) - refreshed when Location is changed
  4. Browse button (builds cript) - opens a file chooser with Select and Cancel buttons for selecting the path of the build script file (its initial location is the Location of the module being imported if the text field is empty)
  5. Configuration Files Folder text field (c)  - specifies the location of deployment descriptors (IDE provides default value if it finds a folder containing ejb-jar.xml within the Location) - refreshed when Location is changed
  6. Browse button (conf. files) (e) - opens a file chooser with Select and Cancel buttons for selecting the configuration files folder (its initial location is the Location of the module being imported if the text field is empty)
  7. Project Name text field (N) - name of the new NetBeans project being created
  8. Project Location text field (L) - specifies the location of project folder. By default the text field contains <all-projects-home> (which might equal to user home). Next time the wizard is invoked the <all-projects-home>  defaults to what the user set it to the last time. Always enabled.
  9. Browse button (new project) (w) - opens a file chooser with Select and Cancel buttons for selecting the project location. Always enabled.
  10. Project Folder text field (r) - non-editable text field showing the full path of created project folder.
  11. Set as Main Project check box (S) - specifies that the newly created project should be set as the main project. Enabled by default.

Wizard buttons' behavior:

  • Back button - always enabled.
  • Next button - enabled if a Location, Configuration Files Folder, Project Name and Project Location are set and a valid project folder is set.
  • Finish button -  always disabled

In-line error messages:

  1. Project Name have to be a valid folder name - if the project name is not properly formatted.
  2. Project Folder Already Exists - if the entered project folder already exists.
  3. Location is not a valid folder - if one of locations are invalid
  4. Configuration Files folder is not a valid folder - if it is not a valid folder

Step 3: New EJB Module with Existing Ant Script - Build and Run Actions

Figure: Build and Run Actions of New EJB Module with Existing Ant Script

+---------------------------------------------------------------------------------+
| New EJB Module with Existing Ant Script                                         |
+---------------------------------------------------------------------------------+
| Build and Run Actions                                                           |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Specify the Ant targets executed by common menu items.                          |
|                                                                                 |
| Build Project:    |_______________________________________________________|_v_| |
| Clean Project:    |_______________________________________________________|_v_| |
| Generate Javadoc: |_______________________________________________________|_v_| |
|                                                                                 |
| Run Project:      |_______________________________________________________|_v_| |
| Test Project:     |_______________________________________________________|_v_| |
| Deploy Project:   |_______________________________________________________|_v_| |
|                                                                                 |
|                                                                                 |
+---------------------------------------------------------------------------------+

Step 4: New EJB Module with Existing Ant Script - EJB Sources

Figure: EJB Sources of New EJB Module with Existing Ant Script

+---------------------------------------------------------------------------------+
| New EJB Module with Existing Ant Script                                         |
+---------------------------------------------------------------------------------+
| EJB Sources                                                                     |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Specify the folders that contains the configuration files and the resource      |
| files.                                                                          |
|                                                                                 |
| Configuration Files Folder: |_/oldProjects/EJBModule/src/conf___| [ Browse... ] |
| Resource Folder:            |_/oldProjects/EJBModule/res________| [ Browse... ] |
|                                                                                 |
| J2EE Version: |_J2EE 1.3____________v_|                                         |
|                                                                                 |
|                                                                                 |
|                                                                                 |
+---------------------------------------------------------------------------------+

Step 5: New EJB Module with Existing Ant Script - Java Sources

Figure: Source Package Folders of New EJB Module with Existing Ant Script

+---------------------------------------------------------------------------------+
| New EJB Module with Existing Ant Script                                         |
+---------------------------------------------------------------------------------+
| Java Sources                                                                    |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Specify the folders containing the java source packages and JUnit test          |
| packages.                                                                       |
|                                                                                 |
| Source Package Folders:                                                         |
| +-----------------------------------------------------------+                   |
| | [f] src                                                   | [ Add Folder... ] |
| | [f] src-api                                               | [    Remove     ] |
| | [f] /shared/mylib/src                                     |                   |
| |                                                           |                   |
| +-----------------------------------------------------------+                   |
|                                                                                 |
| Test Package Folders:                                                           |
| +-----------------------------------------------------------+                   |
| | [f] test                                                  | [ Add Folder... ] |
| | [f] test-api                                              | [    Remove     ] |
| | [f] /shared/mylib/test                                    |                   |
| |                                                           |                   |
| +-----------------------------------------------------------+                   |
|                                                                                 |
| Source Level: |_JDK 1.4___________________________________v_|                   |
|                                                                                 |
+---------------------------------------------------------------------------------+

[f] - folder icon

Step 6: New EJB Module with Existing Ant Script - Java Sources Classpath

Figure: Classpath of New EJB Module with Existing Ant Script

+---------------------------------------------------------------------------------+
| New EJB Module with Existing Ant Script                                         |
+---------------------------------------------------------------------------------+
| Java Sources Classpath                                                          |
| ------------------------------------------------------------------------------- |
|                                                                                 |
| Specify the classpath that will be used by the IDE features like code completion|
| and refactoring while editing the Java sources. This should match what is set up|
| in your Ant script.                                                             |
|                                                                                 |
| [ ] Separate Classpath for Each Source Package Folder                           |
| Folder: |_src_______________________________________________________________v_| |
|                                                                                 |
| Java Sources Classpath:                                                         |
| +-------------------------------------------------------+                       |
| | [j] /users/me/work/myapp/mymodule/lib/some.jar        | [ Add JAR/Folder... ] |
| | [j] /users/me/work/myapp/mymodule/lib/other.jar       | [      Remove       ] |
| | [f] /users/me/work/myapp/mymodule/someclasses         |                       |
| | [j] /users/me/work/myapp/mymodule/lib/another.jar     |                       |
| |                                                       |                       |
| |                                                       |                       |
| |                                                       |                       |
| +-------------------------------------------------------+                       |
|                                                                                 |
+---------------------------------------------------------------------------------+

[f] - folder icon
[j] - JAR file icon

Project Properties Dialog

Sources

Figure: Sources properties panel

+------------------------------------------------------------------------------------------------+
| Project Properties - My Freeform Project                                                       |
+------------------------------------------------------------------------------------------------+
| Categories:                                                                                    |
| +-----------------------+                                                                      |
| |/Java Sources//////////| Project Folder:  |_/home/me/work/projects/My Freeform Project______| |
| | EJB Sources           | Contents Folder: |_/home/me/work/myapp_____________________________| |
| | Java Sources Classpath| Build Script:    |_/home/me/work/myapp/build.xml___________________| |
| | Output                |                                                                      |
| | Build and Run         | Source Package Folders:                                              |
| |                       | |__________Package Folder_______________|_Label__|                   |
| |                       | | [f] src                               |        | [ Add Folder... ] |
| |                       | | [f] lib-src                           |        | [    Remove     ] |
| |                       | | [f] /home/me/shared/mylib/src         |        |                   |
| |                       | |                                       |        | [    Move Up    ] |
| |                       | |                                       |        | [   Move Down   ] |
| |                       | +------------------------------------------------+                   |
| |                       |                                                                      |
| |                       | Test Package Folders:                                                |
| |                       | |__________Package Folder_______________|_Label__|                   |
| |                       | | [f] test                              |        | [ Add Folder... ] |
| |                       | | [f] lib-test                          |        | [    Remove     ] |
| |                       | | [f] /home/me/shared/mylib/test        |        |                   |
| |                       | |                                       |        | [    Move Up    ] |
| |                       | |                                       |        | [   Move Down   ] |
| |                       | +------------------------------------------------+                   |
| |                       |                                                                      |
| |                       | Source Level: |_JDK 1.4________________________v_|                   |
| +-----------------------+                                                                      |
|                                                                                                |
|                                                                            [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------------+

EJB Sources

Figure: EJB Sources properties panel

+------------------------------------------------------------------------------------------------+
| Project Properties - My Freeform Project                                                       |
+------------------------------------------------------------------------------------------------+
| Categories:                                                                                    |
| +-----------------------+                                                                      |
| | Java Sources          | Configuration Folder: |_~/myapp/src/conf_____________| [ Browse... ] |
| |/EJB Sources///////////| Resource Folder:      |______________________________| [ Browse... ] |
| | Java Sources Classpath|                                                                      |
| | Output                | J2EE Version: |_J2EE 1.3________________v_|                          |
| | Build and Run         |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| |                       |                                                                      |
| +-----------------------+                                                                      |
|                                                                                                |
|                                                                            [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------------+
Components of this dialog are:
  1. Configuration Files Folder text field (P) - specifies folder containing configuration files.
  2. Browse button (B) - opens a file chooser named Browse Configuration Files Folder with OK and Cancel buttons. Initially the contents folder is displayed in the file chooser.
  3. Resource Folder text field (R) - specifies folder containing resource files.
  4. Browse button (w) - opens a file chooser named Browse Resource Folder with OK and Cancel buttons. Initially the contents folder is displayed in the file chooser.
  5. J2EE Version text field (J) - specifies J2EE specification level.

Java Sources Classpath

Figure: Java Sources Classpath properties panel

+-------------------------------------------------------------------------------------------------------+
| Project Properties - My Freeform Project                                                              |
+-------------------------------------------------------------------------------------------------------+
| Categories:                                                                                           |
| +-----------------------+                                                                             |
| | Java Sources          |  This classpath is used by the IDE features like code completion            |
| | EJB Sources           |  and refactoring while editing the Java sources. These settings             |
| |/Java Sources Classpath|  do not modify the build script.                                            |
| | Output                |                                                                             |
| | Build and Run         |  [ ] Separate Classpath for Each Source Package Folder                      |
| |                       |  Folder: |_src__________________________________________________________v_| |
| |                       |  Java Sources Classpath:                                                    |
| |                       |  +--------------------------------------------------+                       |
| |                       |  | [j] ~/myapp/mymodule/lib/some.jar                | [ Add JAR/Folder... ] |
| |                       |  | [j] ~/myapp/mymodule/lib/other.jar               |                       |
| |                       |  | [f] ~/myapp/mymodule/someclasses                 | [      Edit...      ] |
| |                       |  | [f] ~/myapp/mymodule/lib/another.jar             | [      Remove       ] |
| |                       |  |                                                  |                       |
| |                       |  |                                                  | [      Move Up      ] |
| |                       |  |                                                  | [     Move Down     ] |
| |                       |  |                                                  |                       |
| |                       |  |                                                  |                       |
| |                       |  +--------------------------------------------------+                       |
| +-----------------------+                                                                             |
|                                                                                   [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------------------------+
Components of this dialog are:
  1. Separate Classpath for Each Source Package check box (S) - indicates how to use the classpath list. If unchecked the same classpath list is used for all source package folders. In this case the Folder combo box is disabled and empty (no value is shown in the combo box). Also the label in front of the combo box is disabled. If checked a separate classpath list is used for each source package folder. In this case the Folder combo box is enabled together with its label. The checkbox is unchecked by default.
  2. Folder combo box (P) - displays the list of source package folders and web pages folder. It shows their display names. The default display names are relative paths for source folders underneath the existing ant project folder or the absolute paths for source folders located outside of the ant project folder.

Output

Figure: Output properties panel

+------------------------------------------------------------------------------------------------+
| Project Properties - My Freeform Project                                                       |
+------------------------------------------------------------------------------------------------+
| Categories:                                                                                    |
| +-----------------------+                                                                      |
| | Java Sources          | Output of source package folders is used by debugger and in          |
| | EJB Sources           | inter-project dependencies.                                          |
| | Java Sources Classpath|                                                                      |
| |/Output////////////////| [x] Separate Output for Each Source Package Folder                   |
| | Build and Run         | Source Package Folder: |_src_____________________________________v_| |
| |                       |                                                                      |
| |                       | Output JARs or Folders Containing Compiled Classes:                  |
| |                       | +--------------------------------------------+                       |
| |                       | | [j] ~/myapp/mymodule/build/module.jar      | [ Add JAR/Folder... ] |
| |                       | | [j] ~/myapp/mymodule/build/another.jar     | [      Remove       ] |
| |                       | |                                            |                       |
| |                       | |                                            |                       |
| |                       | |                                            |                       |
| |                       | +--------------------------------------------+                       |
| |                       |                                                                      |
| |                       | Javadoc Output: |_____________________________________| [ Browse...] |
| +-----------------------+                                                                      |
|                                                                            [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------------+

Build and Run

Figure: Build and Run properties panel

+----------------------------------------------------------------------------------------------+
| Project Properties - My Freeform Project                                                     |
+----------------------------------------------------------------------------------------------+
| Categories:                                                                                  |
| +-----------------------+                                                                    |
| | Java Sources          | Build Project:    |_build______________________________________v_| |
| | EJB Sources           | Clean Project:    |_clean______________________________________v_| |
| | Java Sources Classpath| Generate Javadoc: |_javadoc____________________________________v_| |
| | Output                | Run Project:      |_run________________________________________v_| |
| |/Build and Run/////////| Test Project:     |_test_______________________________________v_| |
| |                       | Deploy Project:   |_deploy_____________________________________v_| |
| |                       |                                                                    |
| |                       | Custom Contextual Menu Items:                                      |
| |                       | |____Label_____|_____________Ant Target_______________| [  Add   ] |
| |                       | | Make         | make                               v | [ Remove ] |
| |                       | |              |                                      |            |
| |                       | |              |                                      |            |
| |                       | |              |                                      |            |
| |                       | |              |                                      |            |
| |                       | |              |                                      |            |
| |                       | |              |                                      |            |
| |                       | +-----------------------------------------------------+            |
| +-----------------------+                                                                    |
|                                                                                              |
|                                                                          [[ OK ]] [ Cancel ] |
+----------------------------------------------------------------------------------------------+
Components of this dialog are:
  1. Deploy Project editable combo box (R) - the field initially contains deploy target if it is present between existing build targets. The combo box contains alphabetically ordered list of all build targets present in build.xml.

Alerts

Alert: Run Project

The Run Project alert shows up if the user invokes Run Project or Run Main Project menu item on a freeform project that doesn't have an Ant target associated with the Run Project action. The same alert with following title appears for following project actions:

  • Run Project
  • Clean Project
  • Build Project
  • Test Project
  • Deploy Project

Figure: New Run Project information alert

+------------------------------------------------------------------------+
| Run Project - EJBModule1                                               |
+------------------------------------------------------------------------+
|                                                                        |
|     o     No build target is associated with Run Project action.       |
|     |                                                                  |
|     |     The freeform project requires a target representing          |
|           the Run Project action to invoke in your Ant script.         |
|           Select the target to invoke.                                 |
|                                                                        |
|           Run Project: |_________________________________________|_v_| |
|                                                                        |
|                                                    [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------+

Components of this alert are:

  1. Run Project editable combo box - allows the user to supply a build target to invoke for the Run Project action. Its popup shows a list of all targets in user's build script.
  2. OK button - closes the alert and invokes the selected build target. Enabled only if a text is supplied in the Run Project combo box.
  3. Cancel button - closes the alert without invoking a build target.

Alert: Debug Project

The Debug Project alert shows up if the user invokes Debug Project or Debug Main Project menu item on a freeform project that doesn't have an Ant target associated with the Debug Project action. The same alert with following title appears for following actions:

  • Debug Project
  • Run File
  • Debug File
  • Test File
  • Debug Test for File

Figure: Debug Project information alert

+------------------------------------------------------------------------+
| Debug Project - EJBModule1                                             |
+------------------------------------------------------------------------+
|                                                                        |
|     o     A build target has to be generated for Debug Project action. |
|     |                                                                  |
|     |     The freeform project requires an IDE-specific build target   |
|           representing the Debug Project action. The IDE will generate |
|           such a build target in "nbproject/ide-targets.xml". You      |
|           should review the generated build target and invoke Debug    |
|           Project again.                                               |
|                                                                        |
|           Do you want to generate the IDE-specific build target now?   |
|                                                                        |
|                                              [[ Generate ]] [ Cancel ] |
+------------------------------------------------------------------------+

Components of this alert are:

  1. Generate button - closes the alert, generates the build target into nbproject/ide-targets.xml and opens the build file in the editor with the cursor positioned on the build target. Always enabled.
  2. Cancel button - closes the alert without invoking a build target.

Icons

This section summarizes a list of graphics in the Freeform project type UI.

Icon Description Occurrence Graphics
Freeform Project Type Project node icon. Projects Window and New Project Wizard. freeform project icon
Companion
Projects:
MySQL Database Server   GlassFish Community: an Open Source Application Server   Open Solaris  Open JDK: an Open SourceJDK   Mobile & Embedded Community     Sponsored by 
Sponsored by Sun Microsystems