cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

Web Application Project Type UI Spec - Promotion E

This UI spec defines the UI for web module projects in the promoE.  It is based on the Build System UI Spec and the J2SE Project Type UI spec.

Author: Ann Sunhachawee, Jan Rojcek, Jiri Kopsa

$Revision: 1.2 $
$Date: 2005/11/29 16:01:58 $

Table of Contents:

New Project Wizard - New Web Application

A user can create a project from scratch or create a project with existing sources. This section talks only about creating from scratch, and the task of creating a project with existing sources is discussed in the next section.

After finishing the wizard the web application node is expanded in Project Window and the index.jsp file node is selected. The index.jsp file is open in the editor and it has the keyboard focus.

[A] My Web App
-- [d] Web Pages
| -- [f] WEB-INF
| -- [j] index.jsp - selected
+- [W] Web Services
+- [C] Configuration Files
+- [S] Source Packages
+- [T] Test Packages
+- [l] Libraries
+- [t] Test Libraries

Step 1: Choose Project

Figure: Choose Project wizard panel

+---------------------------------------------------------------------------------+
| New Project |
+---------------------------------------------------------------------------------+
| Choose Project |
| ------------------------------------------------------------------------------- |
| |
| Categories: Projects: |
| +--------------------------+ +------------------------------------------------+ |
| | General | |/[w] Web Application////////////////////////////| |
| |/Web//////////////////////| | [w] Web Application with Existing Sources | |
| | Enterprise | | [w] Web Application with Existing Ant Script | |
| | Samples | | | |
| | | | | |
| | | | | |
| | | | | |
| +--------------------------+ +------------------------------------------------+ |
| |
| Description: |
| +-----------------------------------------------------------------------------+ |
| | | |
| | | |
| | | |
| +-----------------------------------------------------------------------------+ |
+---------------------------------------------------------------------------------+

Components:

Step 2: Name and Location

Figure: Name and Location wizard panel

+---------------------------------------------------------------------------------+
| New Web Application |
+---------------------------------------------------------------------------------+
| Name and Location |
| ------------------------------------------------------------------------------- |
| |
| Project Name: |_My Web Proj___________________________________________________| |
| |
| Project Location: |_/users/me___________________________________| [ Browse... ] |
| Project Folder: |_/users/me/My Web Proj_______________________| |
| |
| ------------------------------------------------------------------------------- |
| |
| Source Structure: |_Java BluePrints___v_| |
| |
| Add to Enterprise Application: |_EnterpriseApp______________________________v_| |
| |
| Context Path: |_My_Web_Proj/__________________________________________________| |
| Server: |_Sun Java System Application Server 8________________________v_| |
| J2EE Version: |_J2EE 1.4_______v_| |
| |
| Recommendation: In order to create portable J2EE applications, it is recommended|
| to use JDK 1.4 for all J2EE 1.4 and J2EE 1.3 projects. Since you have only JDK |
| 1.5, you may want to at least set the source level to 1.4. |
| [x] Set Source Level to 1.4. |
| |
| [x] Set as Main Project |
| |
+---------------------------------------------------------------------------------+

Components:

  • Project Name, Project Location, Created Folder text fields - same as J2SE Project Type UI Spec
  • Source Structure non-editable combo box (t) - specifies the generated source structure. Contains 2 values - Java Blueprints (default) and Jakarta.
  • Add to Enterprise Application non-editable combo box (A) - specifies an enterprise application project the web module is added to. Contains all the open enterprise application projects alphabetically ordered. The first value is <None> and it is selected by default. If <None> is selected the Web Module isn't added to any application. Enabled if at least one enterprise application is open.
  • Context Path text field - defaults to the name of the project with underscores replacing spaces
  • Server combo box (S) - specifies the server instance the enterprise application is deployed to. The combo box contains all registered app server instances.
  • J2EE Version disabled combo box (J) - specifies the J2EE version. Contains 2 values - J2EE 1.4 (default) and J2EE 1.3 value. It is disabled and J2EE 1.4 value is selected if a SJS App Server selected in the Server combo box.
  • Recommendation message - recommends the user to use JDK 1.4 if the default platform is JDK 1.5 (see Recommendation behaviour)
  • Use JDK 1.4 / Set Source Level to 1.4 checkbox - forces the project to use JDK 1.4 instead of default JDK 1.5 (see Recommandation behavior) and/or to set source level version to 1.4. Selected by default.
  • Set as Main Project check box (M) - specifies that the newly created project should be set as the main project. Checked by default.
Wizard buttons' behavior:
  • Back button - always enabled.
  • Next button - never enabled
  • Finish button - enabled if Project Name and Location are valid

Inline messages:
  • No application server or web server that supports J2EE 1.<x> is registered with the IDE. - shows when user chooses a spec level where there is no equivalent web/app server registered in Server Registry

Recommendation behaviour


The recommandation message and the accompanied checkbox are driven by the requirement to recommend the users to use JDK 1.4 (and/or 1.4 source level version) with J2EE 1.4 Application Servers. The checkbox is selected by default. It remembers its value across subsequent activations of all New Project wizards, thus if the user decides to use JDK 1.5, which is his default platform, he needs to indicate it only once. The list of related wizards follows:

  • New Web Application
  • New Web Application with Existing Sources
  • New EJB Module
  • New EJB Module with Existing Sources
  • New Enterprise Application
  • New Enterprise Application with Existing Sources

In fact, three cases might occur:

1. Only JDK 1.5 is present (as default platform)

In this case, we give the user the following recommendation and choice (checkbox):
Recommendation: Souce Level 1.4 should be used in J2EE 1.4 projects.

[x] Set Source Level to 1.4.
If the checkbox is selected, the source level is set to 1.4, otherwise it will be 1.5, which is the general behaviour.

2. JDK 1.5 is the default platform, however there is also JDK 1.4 available.

Here, the recommendation and the choice are stronger:
Recommendation: JDK 1.4 and Source Level 1.4 should be used in J2EE 1.4 projects.

[x] Use JDK 1.4 and Set Source Level to 1.4.
If the checkbox is selected, the JDK 1.4 is used and the source level is set to 1.4. Otherwise, JDK 1.5 is used and source level is set to 1.5 as well.

3. The default platform is JDK 1.4.

If the user does not use JDK 1.5 as the default platform (this case), JDK 1.4 is used by default. Any recommendation message nor checkbox is shown, since it is not needed.

New Project Wizard - New Web Application with Existing Sources

This wizard creates a new web application. After finishing the wizard the web application node is expanded and selected in Project Window.

[A] My Web App - selected
-- [d] Web Pages
+- [W] Web Services
+- [C] Configuration Files
+- [S] Source Packages
+- [T] Test Packages
+- [l] Libraries
+- [t] Test Libraries

Step 1: Choose Project

Figure: Choose Project wizard panel

+---------------------------------------------------------------------------------+
| New Project |
+---------------------------------------------------------------------------------+
| Choose Project |
| ------------------------------------------------------------------------------- |
| |
| Categories: Projects: |
| +--------------------------+ +------------------------------------------------+ |
| | General | | [w] Web Application | |
| |/Web//////////////////////| |/[w] Web Application with Existing Sources//////| |
| | Enterprise | | [w] Web Application with Existing Ant Script | |
| | Samples | | | |
| | | | | |
| | | | | |
| | | | | |
| +--------------------------+ +------------------------------------------------+ |
| |
| Description: |
| +-----------------------------------------------------------------------------+ |
| | | |
| | | |
| | | |
| +-----------------------------------------------------------------------------+ |
+---------------------------------------------------------------------------------+

Components:

Step 2: Name and Location

Figure: Name and Location wizard panel

+---------------------------------------------------------------------------------+
| New Web Application with Existing Sources |
+---------------------------------------------------------------------------------+
| Name and Location |
| ------------------------------------------------------------------------------- |
| |
| Select the folder that contains all the sources for the web module. |
| |
| Location: |_____________________________________________________| [ Browse... ] |
| |
| Specify a name and location for the new project. |
| |
| Project Name: |_My Web Proj_________________________________| |
| Project Folder: |_/users/me___________________________________| [ Browse... ] |
| |
| ------------------------------------------------------------------------------- |
| |
| Add to Enterprise Application: |_EnterpriseApp______________________________v_| |
| |
| Context Path: |_My_Web_Proj/__________________________________________________| |
| Server: |_Sun Java System Application Server 8________________________v_| |
| J2EE Version: |_J2EE 1.4_______v_| |
| |
| Recommendation: In order to create portable J2EE applications, it is recommended|
| to use JDK 1.4 for all J2EE 1.4 and J2EE 1.3 projects. Since you have only JDK |
| 1.5, you may want to at least set the source level to 1.4. |
| [x] Set Source Level to 1.4. |
| |
| [x] Set as Main Project |
| |
+---------------------------------------------------------------------------------+

Components:

  • Location text field (L) - specifies the location of the EJB module being imported
  • Browse (Location) button (b) - opens a file chooser titled Browse Existing Project Location with OK and Cancel buttons for selecting the location of the project being imported. The file chooser starts in the user home folder. Always enabled.
  • Project Name text field (N) - specifies the project name. Initially contains EJBModule<x> name, where <x> is a number of created ejb module projects. Always enabled.
  • Project Folder text field (F) - specifies the project folder. By default the text field contains <all-projects-home>/<project-name>. If the user doesn't specify a different project folder manually then the <project-name> part of default project folder is automatically taken from the project name field and changed if the user changes the value in project name field. Next time the wizard is invoked the same <all-projects-home> is used by default as the user set it the last time. Always enabled.
  • Browse (Project Folder) button (o) - opens a file chooser titled Browse Project Folder with OK and Cancel buttons for selecting the project folder. Always enabled.
  • Add to Enterprise Application non-editable combo box (A) - specifies an enterprise application project the web module is added to. Contains all the open enterprise application projects alphabetically ordered. The first value is <None> and it is selected by default. If <None> is selected the Web Module isn't added to any application. Enabled if at least one enterprise application is open.
  • Context Path text field (P) - editable textfield; defaults to the contextpath if it can be found under the user specified source location (as in web module sources from previous NB), otherwise defaults to project name (e.g. "/WebApplication5")
  • Server combo box (S) - specifies the server instance the enterprise application is deployed to. The combo box contains all registered app server instances.
  • J2EE Version disabled combo box (J) - specifies the J2EE version. It is disabled and shows J2EE 1.4 value.
  • Recommendation message - recommends the user to use JDK 1.4 if the default platform is JDK 1.5 (see Recommendation behaviour)
  • Use JDK 1.4 / Set Source Level to 1.4 checkbox - forces the project to use JDK 1.4 instead of default JDK 1.5 (see Recommandation behavior) and/or to set source level version to 1.4. Selected by default.
  • 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 Location, Project Name, and Project Location are valid. If there is a build.xml detected after clicking Next, a dialog will appear to alert the user to this.
  • Finish button - always disabled.
Logic:

  • When the Project Location is filled (Project Location text field looses focus or its value is set in the Browse dialog), the wizard searches recursively the specified location for the web pages folder, source folders and libraries. The depth of the recursive search is limited to 3 levels.
  • If the web pages files folder is found, the deployment descriptor is read, and its version is identified. It is then used for validation.
Note: This behaviour (including error messages) is similar to the one of the New EJB Module With Existing Sources wizard.

Inline Error messages
  • Provide the location of the existing sources - if the Location field is blank
  • Provide a project name - if the project name is blank
  • A file with that name already exists - if the project name specified conflicts with an existing file

Dialog: Project Buildfile

Modal dialog. Meant to show to the user with a build.xml already that another buildfile will be used.

Figure: Project Buildfile dialog

+-------------------------------------------------------+
| Project Buildfile |
|-------------------------------------------------------+
| There is an existing build.xml at |
| <abs path of the build.xml> |
| The following ANT buildfile will additionally be |
| created for use by the project. |
| |
| Buildfile Name: |_nbbuild__________________________| |
| Created File: |_k/MyWebApp/nbproject/nbbuild.xml_| |
| |
| [ OK ] [ Cancel ] |
+-------------------------------------------------------+

Components:

  • Buildfile Name textfield - editable, selected by default. If there is no file conflict, the default value is "build".  If there is default to "nbbuild" or whatever default name is deemed proper.
  • Created File textfield - uneditable, shows the entire abs path
Button behavior
  • OK button - enabled if a valid file name is given
  • Cancel button - always enabled;  user stops the project creation  process. "Canceling this will exit the new project wizard. Do you really want to cancel? [ Yes ] [ No ]"
Inline error message:
  • A file with that name already exists - if user types in a name that exists in the location.

Step 3: Existing Sources and Libraries

Figure: Existing Sources and Libraries wizard panel

+---------------------------------------------------------------------------------+
| New Web Application with Existing Sources |
+---------------------------------------------------------------------------------+
| Existing Sources and Libraries |
| ------------------------------------------------------------------------------- |
| |
| Specify the existing folders containing the web pages, libraries, source |
| packages and JUnit test packages. |
| |
| Web Pages Folder: |_/oldProjects/EJBModule/web__________________| [ Browse... ] |
| Libraries Folder: |_/oldProjects/EJBModule/libs_________________| [ Browse... ] |
| |
| 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 | |
| | | |
| +-----------------------------------------------------------+ |
| |
+---------------------------------------------------------------------------------+

Components:

  • Web Pages Folder editable text field (W) - specifies the location of web pages folder.
  • Browse (Web Pages Folder) button (e) - opens a file chooser titled Browse Web Pages Folder with OK and Cancel buttons for selecting the configuration files folder (its initial location is the Location of the module being imported)
  • Libraries Folder editable text field (L) - specifies the location of folder containing EJB module libraries.
  • Browse (Libraries Folder) button - opens a file chooser titled Browse Libraries Folder with OK and Cancel buttons for selecting the libraries folder (its initial location is the Location of the module being imported)
  • For description of other component see J2SE Project UI Spec.

Logic:

  • If the Web Pages Folder is changed, the folder is searched for the deployment descriptor. If the deployment descriptor is found, it is read and its version is identified. It is then compared to the J2EE version set in the previous step and an error message is eventually displayed.
Note: This behaviour (including error messages) is similar to the one of the New EJB Module With Existing Sources wizard.

Alerts

  • Warn user if contents will be written within their directories

Note:

  • User must fill in the required fields. They will not get a chance to alter this information within the IDE after this point. If they must, they will have to create a new project.

Project Window

Figure: Projects window with all major nodes expanded

+-----------------------------------------------------+
| Projects |
+-----------------------------------------------------+
| [A] My Web App |
| -- [d] Web Pages |
| | -- [h] ContactUs.html |
| | -- [j] Checkout.jsp |
| | -- [f] images |
| | | -- [g] gif |
| | -- [f] WEB-INF |
| | | +- [f] tags |
| | | -- [x] struts-config.xml |
| | | -- [j] AccountSummary.jsp |
| | -- [f] lib |
| | -- [x] web.xml |
| | -- [x] sun-web.xml |
| -- [W] Web Services |
| | -- [w] <name of webservice> |
| | +- [o] operation |
| -- [W] Web Service Clients |
| -- [w] <name of webservice> |
| -- [P] <name of port> |
| -- [o] operation |
| -- [C] Configuration Files |
| | +- [c] content.xml |
| | +- [c] web.xml |
| -- [S] Source Packages |
| | -- [p] <default package> |
| | | -- [c] MyClassInDefaultPackage.java |
| | -- [e] com.mycompany.newpackage |
| | -- [p] com.mycompany.petstore |
| | | +- [c] FrontControllerServlet.java |
| | | +- [c] PetstoreHelper.java |
| | | +- [b] Bundle.properties |
| | +- [p] com.mycompany.petstore.api |
| | +- [p] com.mycompany.petstore.lib |
| +- [T] Test Packages |
| +- [l] Libraries |
| +- [t] Test Libraries |
| |
| |
| |
| |
+-----------------------------------------------------+

[A] - Web Application Project Type icon
[s] - Source Packages logical folder icon
[b] - Properties File icon
[j] - jsp icon
[h] - html icon
[x] - xml icon
[W] - Web Services folder icon (used also for Web Service Clients)
[w] - Web Service icon
[C] - Configuration Files folder icon
[c] - Configuration File icon
[R] - Server Resources folder icon
[r] - Server Resource icon
[S] - Source Packages folder icon
[p] - Java Package icon
[e] - Java Package empty icon
[c] - Java File icon
[T] - Test Packages folder icon
[l] - Libraries Libraries folder icon
[t] - Test Libraries folder icon
[P] - Web Service Port icon
[o] - operation
Note: The icons are specified in the EJB Module Project UI spec.

Node: Web Application Project Node

  • Read-only name: <project-name>
  • Tooltip: Web Application
  • Contextual menu:
    New                        >
    ----------------------------
    Build Project
    Clean & Build Project
    Clean Project
    Verify Project
    Generate Javadoc for Project
    ----------------------------
    Run Project
    Debug Project
    Deploy Project
    ----------------------------
    Set as Main Project
    Open Required Projects
    Close Project
    ----------------------------
    Find...
    ----------------------------
    Properties
  • Contextual menu - New
    New > 
    [ ] File/Folder...
    --------------------------
    [ ] JSP...
    [ ] HTML...
    [ ] Servlet...
    [ ] Java Class...
    [ ] Web Service ...
    [ ] Web Service Client...
  • Run Project - will copy static files that have been modified to the server, and perform a restart or redeploy of the web module if the IDE detects it is necessary to do so. The goal is to accurately get the web module running, with a minimal amount of time delay. If the "Display Browser on Run" checkbox in the Project Properties dialog is selected, a browser is opened and navigated to the specified url.
  • Deploy Project - undeploy/redeploy project from the server. Enabled only if the project has been previously deployed on the server.
  • Properties - Opens the Project Properties dialog

Node: Web Pages

  • Read-only name: Web Pages.
  • Tooltip: None
  • Contextual menu:
    New                        >
    ----------------------------
    Find...
    ----------------------------
    Paste
    ----------------------------
    Properties
  • Contextual menu - New
    New > 
    [ ] File/Folder...
    --------------------------
    [ ] JSP...
    [ ] HTML...
    [ ] Servlet...
    [ ] Java Class...
    [ ] Web Service ...
    [ ] Web Service Client...

Node: Web Services

  • Read-only name: Web Services
  • Tooltip: None
  • Contextual menu:
    New > 
    [ ] File/Folder...
    --------------------------
    [ ] JSP...
    [ ] HTML...
    [ ] Servlet...
    [ ] Java Class...
    [ ] Web Service ...
    [ ] Web Service Client...

Node: Web Service Clients

  • Read-only name: Web Service Clients
  • Tooltip: None
  • Contextual menu:
    New > 
    [ ] File/Folder...
    --------------------------
    [ ] JSP...
    [ ] HTML...
    [ ] Servlet...
    [ ] Java Class...
    [ ] Web Service ...
    [ ] Web Service Client...

Node: Configuration Files

  • Read-only name: Configuration Files
  • Contextual menu:
    Find...

Node: Configuration File (web.xml)

Double-clicking will open the web module logical editor.

Node: Server Specific Configuration File (sun-web.xml)

Double-clicking will open the editor provided by the plugin.

Node: Configuration File (webservices.xml, or other XML file)

Double-clicking will open the XML file editor.

Node: Source Packages

The content of this node is common to all Java projects (it shows the content of ./src or ./src/java folder). There might be multiple Source packages folders according to recent design updates.

For detailed information see J2SE Project UI Spec.

Node: Test Packages

For detailed information see J2SE Project UI Spec.

Node: Libraries

  • Read-only name: Libraries
  • Tooltip:
  • Contextual menu:
    Add Project...
    Add Library...
    Add JAR/Folder...

For detailed information see EJB Module UI Spec.

Node: Test Libraries

  • Read-only name: Test Libraries
  • Tooltip:
  • Contextual menu:
    Add Project...
    Add Library...
    Add JAR/Folder...

For detailed information see EJB Module UI Spec.

File Window

Figure: File window

+---------------------------------------------------------+
| Files |
+---------------------------------------------------------+
| [A] My Web App |
| +- [f] build |
| +- [f] dist |
| +- [f] nbproject |
| -- [f] src |
| | -- [f] conf |
| | | -- [x] context.xml |
| | -- [f] java |
| | | +- [f] com |
| | | | -- [f] mycompany |
| | | | -- [f] newpackage |
| | | | -- [f] petstore |
| | | | +- [f] api |
| | | | +- [f] lib |
| | | | +- [c] FrontControllerServlet.java |
| | | | +- [c] PetstoreHelper.java |
| | | | +- [b] Bundle.properties |
| | | -- [c] MyClassInDefaultPackage.java |
| | -- [f] test |
| | -- [f] com |
| | -- [f] mycompany |
| | +- [f] petstore |
| -- [f] web |
| -- [h] <html> |
| -- [j] <jsps> |
| -- [f] WEB-INF |
| +- [f] tags |
| -- [f] lib |
| -- [l] jstl.jar |
| -- [x] web.xml |
| -- [x] sun-web.xml |
| |
| |
| |
| |
+---------------------------------------------------------+

Legend is the same as for Projects Window.

Note: The physical layout is attempting to coincide with the J2EE Blueprints recommendations.

Project Properties Dialog

A Project Properties Dialog is a place for modifying project properties through the GUI. It is a non-modal dialog showing property categories in a list and a panel containing properties of selected category.

Figure: Project Properties dialog

+--------------------------------------------------------------------------------------------+
| Project Properties - My EJB Module |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | |
| | Libraries | |
| | | |
| | Build | |
| | Compiling | |
| | Packaging | |
| | Documenting | |
| | | |
| | Run | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+
Components of this dialog are:
  1. Categories list (C) - displays a list of property categories.
  2. OK button - closes the dialog and commits the changes.
  3. Cancel button - closes the dialog and cancels the changes.

Sources

Figure: Sources properties panel

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| |/Sources////////| Project Folder: |_/home/me/work/My Web App____________________________| |
| | Libraries | |
| | | Web Pages Folder: |_/home/me/work/My Web App/web________| [ Browse... ] |
| | Build | |
| | Compiling | Source Package Folders: |
| | Packaging | |______Package Folder______|_________Label__________| |
| | Documenting | | [f] src | Source Packages | [ Add Folder... ] |
| | | | [f] src-api | src-api | [ Remove ] |
| | Run | | [f] /shared/mylib/src | /shared/mylib/src | |
| | | | | | [ Move Up ] |
| | | | | | [ Move Down ] |
| | | +---------------------------------------------------+ |
| | | |
| | | Test Package Folders: |
| | | |______Package Folder______|_________Label__________| |
| | | | [f] test | Test Packages | [ Add Folder... ] |
| | | | [f] test-api | test-api | [ Remove ] |
| | | | [f] /shared/mylib/test | /shared/mylib/test-api | |
| | | | | | [ Move Up ] |
| | | | | | [ Move Down ] |
| | | +---------------------------------------------------+ |
| | | |
| | | Source Level: |_JDK 1.4___________________________v_| |
| | | |
| | | Error: Package Folder is already used in another project. |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+
Components of this dialog are:
  1. Project Folder non-editable text field (P) - displays the project folder.
  2. Web Pages Folder editable text field (W) - specifies the location of web pages folder.
  3. Browse (Web Pages Folder) button (e) - opens a file chooser titled Browse Web Pages Folder with OK and Cancel buttons for selecting the configuration files folder (its initial location is the Location of the module being imported)
  4. For description of other component see J2SE Project UI Spec.

Libraries

A libraries category allows the user to manage project libraries and change the target Java platform.

Figure: Libraries property category - Compile tab

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Java Platform: |_JDK 1.4.2_05_______________v_| [ Manage Platforms... ] |
| |/Libraries//////| _________ _______________ ___________ |
| | | / Compile \/ Compile Tests \/ Run Tests \ |
| | Build | | \----------------------------------------------------------+ |
| | Compiling | | Compile-time Libraries: | |
| | Packaging | | |____________Library_______________|_Package| | |
| | Documenting | | | [p] My Lib | x | [ Add Project... ] | |
| | | | | [l] XML Parser | x | [ Add Library... ] | |
| | Run | | | [j] xerces.jar [~/work/lib/xerces| x | [ Add JAR/Folder... ] | |
| | | | | [f] /home/me/work/mylib/sax | x | | |
| | | | | | | [ Edit... ] | |
| | | | | | | [ Remove ] | |
| | | | | | | | |
| | | | | | | [ Move Up ] | |
| | | | | | | [ Move Down ] | |
| | | | | | | | |
| | | | +-------------------------------------------+ | |
| | | | Compile-time libraries are propagated to other library categories. | |
| | | +---------------------------------------------------------------------+ |
| | | [x] Build Required Projects (Libraries and additional WAR content) |
| | | |
| | | Error: Some library items cannot be located. Use the Reference Problems |
| | | category to locate the items. |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+

[p] - Project icon
[l] - Library icon
[j] - JAR file icon
[f] - Folder icon

Components of this dialog are:

Figure: Libraries properties panel - Compile Tests tab

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Java Platform: |_JDK 1.4.2_05_______________v_| [ Manage Platforms... ] |
| |/Libraries//////| _________ _______________ ___________ |
| | | / Compile \/ Compile Tests \/ Run Tests \ |
| | Build | |---------/ \-----------------------------------------+ |
| | Compiling | | Compile-time Test Libraries: | |
| | Packaging | | +-------------------------------------------+ | |
| | Documenting | | | [l] JUnit | [ Add Project... ] | |
| | | | | [j] test-lib.jar [~/work/lib/test-lib.jar]| [ Add Library... ] | |
| | Run | | | | [ Add JAR/Folder... ] | |
| | | | | | | |
| | | | | | [ Edit... ] | |
| | | | | | [ Remove ] | |
| | | | | | | |
| | | | | | [ Move Up ] | |
| | | | | | [ Move Down ] | |
| | | | | | | |
| | | | +-------------------------------------------+ | |
| | | +---------------------------------------------------------------------+ |
| | | [x] Build Required Projects (Libraries and additional WAR content) |
| | | |
| | | Error: Some library items cannot be located. Use the Reference Problems |
| | | category to locate the items. |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+

[p] - Project icon
[l] - Library icon
[j] - JAR file icon
[f] - Folder icon

Components of this dialog are:

Figure: Libraries properties panel - Run Tests tab

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Java Platform: |_JDK 1.4.2_05_______________v_| [ Manage Platforms... ] |
| |/Libraries//////| _________ _______________ ___________ |
| | | / Compile \/ Compile Tests \/ Run Tests \ |
| | Build | |--------------------------/ \----------------------------+ |
| | Compiling | | Run-time Test Libraries: | |
| | Packaging | | +-------------------------------------------+ | |
| | Documenting | | | -- [j] run-test-lib.jar [~/work/lib/run...| [ Add Project... ] | |
| | | | | -- [L] Compile-time Test Libraries | [ Add Library... ] | |
| | Run | | | -- [p] My Lib | [ Add JAR/Folder... ] | |
| | | | | -- [l] XML Parser | | |
| | | | | -- [j] xerces.jar [~/work/lib/xerce...| [ Edit... ] | |
| | | | | -- [f] /home/me/work/mylib/sax | [ Remove ] | |
| | | | | | | |
| | | | | | [ Move Up ] | |
| | | | | | [ Move Down ] | |
| | | | | | | |
| | | | +-------------------------------------------+ | |
| | | +---------------------------------------------------------------------+ |
| | | [x] Build Required Projects (Libraries and additional WAR content) |
| | | |
| | | Error: Some library items cannot be located. Use the Reference Problems |
| | | category to locate the items. |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+

[p] - Project icon
[l] - Library icon
[j] - JAR file icon
[f] - Folder icon

Components of this dialog are:

Build: Compiling

The user can change Javac options in this panel.

Figure: Compiling properties panel

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Compiler Options: |
| | Libraries | [x] Generate Debugging Info |
| | | [ ] Report Uses of Deprecated APIs |
| | Build | |
| |///Compiling////| Additional Compiler Options: |________________________________________| |
| | Packaging | (e.g. -Xlint:unchecked) |
| | Documenting | |
| | | |
| | Run | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+

Components of this dialog are:

Build: Packaging

This panel applies to packaging the project for deployment, whether a WAR file is built or not.

Figure: General properties panel

+------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | WAR File: |_/home/me/My Web App/dist/My-App.jar_____________________| |
| | Libraries | |
| | | Exclude From WAR File: |_**/*.java,**/*.form________________________| |
| | Build | (cannot exclude class files) |
| | Compiling | [ ] Compress WAR File |
| |///Packaging////| |
| | Documenting | WAR Content: |
| | | |_______WAR Item________|____Path in WAR_____| |
| | Run | |Web Pages |/ | [ Add Project... ] |
| | | |Libraries |/WEB-INF/lib | [ Add Library... ] |
| | | |Compiled Sources |/WEB-INF/classes | [ Add File/Folder... ] |
| | | | | | |
| | | | | | [ Remove ] |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| +----------------+ +--------------------------------------------+ |
| [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------+

Components of this dialog are:

  • Additional Content to Include table (P): Specifies the additional content to include into the WAR file. Always enabled.
  • Add Project button (P): Opens the Add Project Dialog for selecting a project. Always enabled.
  • Add Library button (A): Opens the Add Library Dialog, which allows the user to add an existing class library. Always enabled.
  • Add File/Folder button (F): Opens a file chooser named Add File/Folder for selecting a file or folder on the disk. The file chooser has Add File/Folder and Cancel buttons. The File of Types shows one item: All Files. The default browse location is the project folder. For subsequent invocation, it remembers the previous browse location. The button is always enabled.
  • For description of other dialog component see J2SE Project UI Spec.
  • Remove button (R), removes currently selected item of the table
The list WAR Content contains three static items, which represent the default content of a WAR file. These items can not be removed.
Note: These items won't be present in promo e.

Build: Documenting

The Documenting panel allows the user to change properties of generating javadoc for a project.

Figure: Documenting properties panel

+------------------------------------------------------------------------------------------+
| Project Properties - My App |
+------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | [ ] Include Private and Package Private Members |
| | Libraries | |
| | | Generate: |
| | Build | [x] Class Hierarchy Tree |
| | Compiling | [x] Class and Package Usage Pages |
| | Packaging | [x] Navigator Bar |
| |///Documenting//| [x] Index |
| | | [x] Separate Index per Letter |
| | Run | |
| | | Document Additional Tags: |
| | | [ ] @author |
| | | [ ] @version |
| | | |
| | | Browser Window Title: |_____________________________________________| |
| | | |
| | | Additional Javadoc Options: |_______________________________________| |
| | | (e.g. -overview <file>) |
| | | |
| | | [x] Preview Generated Javadoc |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------+

Components:

Run

Figure: Run properties panel

+--------------------------------------------------------------------------------------------+
| Project Properties - My Web App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Server: |_Sun Java System Application Server 8________________v_| |
| | Libraries | J2EE Version: |_J2EE 1.4_______| |
| | | Context Path: |_My_Web_Proj/__________________________________________| |
| | Build | |
| | Compiling | [X] Display Browser on Run |
| | Packaging | |
| | Documenting | Specify the URL relative to the context path to run. |
| | | Relative URL: |___________________________________________________| |
| |/Run////////////| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+

Components:

  • Server combo box (S) - specifies the server instance the enterprise application is deployed to. The combo box contains all registered app server instances.
  • J2EE Version disabled combo box (J) - specifies the J2EE version. Contains 2 values - J2EE 1.4 (default) and J2EE 1.3 value. It is disabled and J2EE 1.4 value is selected if a SJS App Server selected in the Server combo box.
  • Context Path text field - defaults to the name of the project with underscores replacing spaces
  • Display Browser on Run check box (D) - specifies whether to open a browser when the user invokes the Run action. Checked by default.
  • Relative URL editable text field (R) - specifies the relative URL to open in the browser. The text field and label (and the description label above the text field) are disabled if the Display Browser on Run is unchecked.

New File Wizard

Step 1: Choose File Type

Figure: File Type categories in Web Application Project

Web
JSP
Servlet
Filter
Web Application Listener
Tag Library Descriptor
Tag File
Tag Handler
HTML
Enterprise
Service Locator
Caching Service Locator
Java Classes
JavaBeans Objects
Web Services
Web Service
Web Service from WSDL
Web Service Client
Message Handler
Databases
Database Schema
Server Resources
JDBC Connection Pool
JDBC Resource
JMS Resource
JavaMail Resource
Persistance Resource
XML
Ant Build Scripts
Other

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