EJB Module Project UI Spec
This is a specification of the Enterprise JavaBeans Module Project.
Authors: Jiri Kopsa, Ann Sunhachawee, Jan Rojcek
$Revision: 1.1 $
$Date: 2005/04/25 13:35:44 $
Table of Contents:
There are 2 project wizards for the new EJB Module project in the
"Enterprise" category.
- EJB Module - The Empty Enterprise
JavaBeans (EJB) Module Project creates a project in the system but does
not add
any files or EJBs to the project. This template is best for J2EE
developers who
like to start from scratch.
- EJB Module with Existing Sources -The
EJB Module with Existing Sources imports an existing Java source
directory
into a standard EJB Module project. A standard project uses an
IDE-generated
build script to build, run, debug and deploy your project.
For general information about project management see Buildsys
UI spec.
Step 1: New Project - Choose
Project
This wizard creates a new EJB Module project. The user can choose from
2
projects in the first panel - EJB Module, EJB Module with Existing
Sources.
After finishing the wizard the project node is selected and expanded.
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 -
Name and Location
Figure: Name and Location of EJB Module
+---------------------------------------------------------------------------------+
| New EJB Module |
+---------------------------------------------------------------------------------+
| Name and Location |
| ------------------------------------------------------------------------------- |
| |
| Project Name: |_EJBModule1____________________________________________________| |
| |
| Project Location: |_/users/me___________________________________| [ Browse... ] |
| Project Folder: |_/users/me/EJBModule1________________________| |
| |
| ------------------------------------------------------------------------------- |
| |
| Add to Enterprise Application: |_EnterpriseApp______________________________v_| |
| |
| 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 of this wizard step are:
- Project Name text field (N) - specifies the
project name which is used as project folder name. Project name have to
be a valid folder name. Initially contains
EJBModule<x>
name, where <x> is a number of created EJB Modules.
Always enabled.
- 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.
- Browse button (w) - opens a file chooser
titled Browse Project Location with OK
and Cancel buttons for selecting the project folder
location.
Always enabled.
- Project Folder text field (F) - non-editable
text field
showing the full path of created project folder. Always enabled.
- Add to Enterprise Application non-editable
combo box (A)
- specifies an enterprise application project the EJB 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 EJB Module isn't
added to any
application.
Enabled if at least one enterprise application is open.
- 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
and Use JDK 1.4 / Set Source Level to 1.4 checkbox -
the behaviour is the same as in the New
Web Application wizard.
- 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 - always disabled.
- Finish button - enabled if validation is ok.
In-line error messages:
- Project Name have to be a valid folder name -
if the project name is not properly formatted.
- Project Folder Already Exists - if the entered
project folder already exists.
- 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
Step 2: EJB
Module with Existing Sources - Name and Location
Figure: Name and Location of EJB Module with
Existing Sources
+---------------------------------------------------------------------------------+
| New EJB Module with Existing Sources |
+---------------------------------------------------------------------------------+
| Name and Location |
| ------------------------------------------------------------------------------- |
| |
| Select the folder that contains all the sources for the Enterprise JavaBeans |
| Module. |
| |
| Location: |_/users/me/MyEJBModule_______________________________| [ Browse... ] |
| |
| Specify a name and location for the new project. |
| |
| Project Name: |_EJBModule1____________________________________| |
| Project Folder: |_/users/me/EJBModule1__________________________| [ Browse... ] |
| |
| ------------------------------------------------------------------------------- |
| |
| Add to Enterprise Application: |_EnterpriseApp______________________________v_| |
| |
| 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 of this wizard step are:
- Location text field (o) -
specifies the location of the EJB module being imported
- Browse (Location) button
(b) -
opens a file chooser titled Browse Existing Source
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 (L) - 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 EJB 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 EJB Module isn't
added to any
application.
Enabled if at least one enterprise application is open.
- 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
and Use JDK 1.4 / Set Source Level to 1.4 checkbox -
the behaviour is the same as in the New
Web Application wizard.
- 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 valid Location,
Project Name
and Project Folder are set.
- 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 locationfor the configuration files folder,
source folders and libraries. The depth of the recursive search is
limited to 3 levels.
- TODO: What patterns are exactly
searched?
- If the configuration files folder is found, the deployment
descriptor is read, and its version is identified. It is then used for
validation.
In-line error messages:
- Project Name has to be a valid folder name -
if the project name is not properly formatted.
- Location has to be a valid folder
-
if one of locations are invalid.
- Since your project uses J2EE
1.3, the deployment descriptor will be automatically updated for J2EE
1.4. - If the DD version is 1.3 and the user selects J2EE
version 1.4.
- Since your project uses J2EE
1.4,
the J2EE version has to be set to J2EE 1.4 as well. - If the DD
version is 1.4 and the user selects J2EE version 1.3. In this case the
Next button is disabled.
Step 3: EJB
Module with Existing Sources - Existing Sources and Libraries
Figure: Existing Sources and Libraries wizard panel
+---------------------------------------------------------------------------------+
| New EJB Module with Existing Sources |
+---------------------------------------------------------------------------------+
| Existing Sources and Libraries |
| ------------------------------------------------------------------------------- |
| |
| Specify the existing folders containing the configuration files, libraries |
| source packages and JUnit test packages. |
| |
| Configuration Files Folder: |_/oldProjects/EJBModule/META-INF___| [ 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 of this wizard step are:
- Configuration Files Folder editable 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).
- Browse (Configuration
Files
Folder) button (e) - opens a file chooser titled Browse
Configuration
Files 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 containint 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)
- Source Package Folders list (S) - shows the
list of
source package folders. If a folder is located underneath the project
folder
then it shows a relative path, otherwise it shows the full path. Allows
multi-selection.
- Add Folder button (A) - opens a file chooser
named Add Source Package Folder with Add
Folder
and Cancel buttons. The project folder is the default
browse
location. When invoked next time it starts with the last browse
location. The File of Type has one item named Folder.
If
the user selects a folder or multiple folders that are already in the Test
Package Folders or they are already used in
another
project and clicks Add Folder, then they are not
added into
the package folder list and the user is warn about this fact in Add Package Folder alert. All
folders that
are added into the folder list are selected in the list. If the user
adds an
item that already is in the list, it is just selected.
- Remove button (R) - removes the selected item
from the
list. Enabled only if an item is selected in the list.
- Test Package Folders list (S) - shows the list
of
test package folders. If a folder is located underneath the project
folder
then it shows a relative path, otherwise it shows the full path. Allows
multi-selection.
- Add Folder button (d) - opens a file chooser
named Add Test Package Folder with Add Folder
and Cancel buttons. The project folder is the default
browse
location, when clicked next time it remembers the last browse location.
The File of Type has one item named Folder.
If
the user selects a folder or multiple folders that are already in the Source
Package Folders or they are already used in
another
project and clicks Add Folder, then they are not
added into
the package folder list and the user is warn about this fact in Add Package Folder alert. All
folders that
are added into the folder list are selected in the list. If the user
adds an
item that already is in the list, it is just selected not added second
time.
- Remove button (m) - removes the selected item
from the
list. Enabled only if an item is selected in the list.
Wizard buttons' behavior:
- Back button - always enabled.
- Next button - always disabled.
- Finish button - enabled if at least one source
folder
exists. If any Source Package Folder or Test
Package Folder contains class files (compiled java files) then
a New EJB Module
with Existing
Sources alert is shown asking the user whether to delete the class
files or
not.
Logic:
- If the Configuration Files 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.
In-line error messages:
- Configuration Files folder is
not a valid folder - if it is not a valid folder
- Since your project uses J2EE
1.3, the deployment descriptor will be automatically updated for J2EE
1.4. - If the DD version is 1.3 and the user selects J2EE
version 1.4.
- Since your project uses J2EE
1.4,
the J2EE version on the previous page has to be set to J2EE 1.4 as
well. - If the DD version is 1.4 and the user selects J2EE
version 1.3. In this case the Finish button is disabled.
Project Window
This section contains specification of the Projects View Tree
appearance. The
Projects View gives the developer a logical view of the Project while
the Files
View gives a physical view of the project. The reason why is a special
subtree
with individual EJBs and WSs included is to support following actions:
- hide the plumbing (interfaces) from the user and ease navigation
(as you can see lower, several files are created per EJB, however only
the *Bean.java are important),
- provide structural view of the bean implementation so the user
can quickly
- navigate the most frequently accessed pieces of information
(code or meta-data, i.e. bean, fields and methods configuration),
- explore and understand the outer face of a component (methods
and operations callable by clients),
- add fields and methods directly from the project browser (no need
to open the editor to add a CMP field).
The subtree of the components might be moved to the Navigator
component, when
it is introduced. In that case, the subtree would be probably
restructured (to
contain both - pointers to meta-data (CMP fields, finders) and the
whole
java-structure).
Following mockup shows a general view of the Project browser, it
does not
include methods appearance. That topic is discussed in a different
document.
Figure: Project Window
+----------------------------------------------+
| Projects |
+----------------------------------------------+
| - [A] MyAppEJB |
| - [E] Enterprise Beans |
| + [e] <name of entity bean> |
| + [m] <name of message-driven bean> |
| + [s] <name of session bean> |
| - [W] Web Services |
| - [w] <name of webservice> |
| - [o] operation |
| - [C] Configuration Files |
| - [c] ejb-jar.xml |
| - [c] webservices.xml |
| - [c] <name of server specific DDs> |
| - [R] Server Resources |
| - [r] resource1 |
| - [r] resource2 |
| - [S] Source Packages |
| - [p] com.acme |
| + [j] MyEntityEJB1Bean.java |
| + [j] MyEntityEJB1.java | *
| + [j] MyEntityEJB1Local.java | *
| + [j] MyEntityEJB1LocalHome.java | *
| + [j] MyEntityEJB1PK.java | *
| - [p] com.acme.other |
| + [j] MyEntityEJB2Bean.java |
| + [j] MyEntityEJB2Local.java | *
| + [j] MyEntityEJB2LocalHome.java | *
| + [j] MyEntityEJB2PK.java | *
| + [j] MySessionEJBBean.java |
| + [j] MySessionEJB.java | *
| + [j] MySessionEJBHome.java | *
| + [j] MyWebService1Bean.java |
| + [j] MyWebService1.java | *
| + [j] MyWebService1Local.java | *
| + [j] SomeHelperClass.java |
| + [S] Test Packages |
| + [l] Libraries |
| + [t] Test Libraries |
| |
+----------------------------------------------+
* - indicates the file was generated by IDE based on EJB or WS
[A] - EJB Module project icon
[E] - Enterprise Beans folder icon
[e] - Entity Bean icon
[m] - Message-Driven Bean icon
[s] - Session Bean icon
[W] - Web Services folder icon
[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
[j] - Java File icon
[T] - Test Packages folder icon
[l] - Libraries Libraries folder icon
[t] - Test Libraries folder icon
Figure: Libraries Node Hierarchy
+----------------------------------------------+
| Projects |
+----------------------------------------------+
| - [A] MyAppEJB |
| + [E] Enterprise Beans |
| + [W] Web Services |
| + [C] Configuration Files |
| + [R] Server Resources |
| + [S] Source Packages |
| + [T] Test Packages |
| - [l] Libraries |
| - [L] DBLib - dblib.jar |
| - [p] com.mycompany.dblib |
| + [c] DBLib.class |
| + [p] com.mycompany.dblib.api |
| + [p] com.mycompany.dblib.spi |
| - [L] DBLib - /home/me/lib/dblibx |
| + [p] com.mycompany.dblibx |
| + [p] com.mycompany.dblibx.api |
| + [p] com.mycompany.dblibx.spi |
| - [R] My Lib Module |
| - [J] core.jar |
| + [p] com.mycompany.core |
| - [F] /home/me/lib/sax |
| + [p] com.mycompany.sax |
| - [v] Sun Java System Application Se...|
| + [p] javax.ejb |
| - [D] JDK 1.4.2_05 |
| + [p] java.applet |
| + [p] java.awt |
| + [p] java.awt.color |
| - [t] Test Libraries |
| - [L] TestLib - testlib.jar |
| - [p] com.mycompany.ttlib |
| + [c] DBLib.class |
| + [p] com.mycompany.ttlib.api |
| + [p] com.mycompany.ttlib.spi |
| - [L] TestLib - /home/me/lib/testlibx |
| + [p] com.mycompany.ttlibx |
| + [p] com.mycompany.ttlibx.api |
| + [p] com.mycompany.ttlibx.spi |
| - [R] My Test Lib Module |
| - [J] test.jar |
| + [p] com.mycompany.test |
| - [F] /home/me/lib/test-sax |
| |
+----------------------------------------------+
[A] - EJB Module project icon
[E] - Enterprise Beans folder icon
[W] - Web Services folder icon
[C] - Configuration Files folder icon
[R] - Server Resources folder icon
[S] - Source Packages folder icon
[T] - Test Packages folder icon
[l] - Libraries folder icon
[t] - Test Libraries folder icon
[p] - Java Package icon
[L] - Library icon
[R] - Required Project icon
[J] - JAR file icon
[F] - Folder icon
[v] - Server icon
[D] - Java Platform icon
[c] - Class file icon
- Double clicking the node opens the EJB Module Editor.
- Read-only name: <project-name>
- Tooltip: EJB Module
- Contextual menu:
New >
----------------------------
Build Project
Clean & Build Project
Clean Project
Verify Project
Generate Javadoc for Project
----------------------------
Run Project
Debug Project
Deploy Project
----------------------------
Set Main Project
Open Required Projects
Close Project
----------------------------
Find...
----------------------------
Properties
- Contextual menu - New
New >
[ ] File/Folder...
--------------------------
[ ] Session Bean...
[ ] Entity Bean...
[ ] CMP Entity Beans from Database...
[ ] Message Driven Bean...
[ ] Web Service...
[ ] Java Class...
- Run Project - will run
the server
(if it is not running), followed by deploy. If the server was running
in the
debug mode, the IDE will bring up a dialog box asking "The debugging
session on
the {deployment target} is running. Do you want to terminate it and
start the
server in standard mode?". The IDE will terminate the debug session,
detach the
debugger, stop the server before starting in standard mode if the
dialog box is
confirmed.
- Debug Project - will run
the server
in debug mode and attach a debugger, followed by deploy. If the server
was
running in the standard mode, the IDE will bring up a dialog box asking
"The
{deployment target} is currently running in standard mode. Do you want
to stop
it and start it in the debug mode?". The IDE will stop the server and
start it
in debugging mode if the dialog box is confirmed.
- Verify Project -
validates the EJB
module, the result is presented in the output window. The Validate
function is
also part of the deployment process.
- Deploy Project - deploys
the module
(can do incremental deployment if possible). The action will check
whether the
module is present on the deployment target at first. If so, it will
show a
message box with the message "Module already deployed.".
This node contains all enterprise beans (if they have local or remote
EJB interface, i.e. we are not showing those WSs that don't have EJB
interface - note: a WSs in EJB
Module is implemented as a Session Bean). Double clicking the
node will open the EJB Module Editor in the Enterprise Beans
section.
This node contains all WSs. Double clicking the node could open editor
for WS's
deployment descriptor (however, we are not going to have one in current
release), so it just expands the node.
This node contains the content of the /conf folder.
- Read-only name: Configuration Files
- Contextual menu:
Find...
Double-clicking will open the EJB Module logical editor.
Double-clicking will open the editor provided by the plugin.
Double-clicking will open the XML file editor.
This node contains server resources defined in xml files of the ./setup
folder.
- Read-only name: Server Resources
- Contextual menu:
New >
----------------------------
Find...
----------------------------
Paste
- Contextual menu - New
New >
[ ] File/Folder...
--------------------------
[ ] Session Bean...
[ ] Entity Bean...
[ ] CMP Entity Beans from Database...
[ ] Message Driven Bean...
[ ] Web Service...
[ ] Java Class...
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.
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.
For detailed information see J2SE
Project UI Spec.
For detailed information see J2SE
Project UI Spec.
Shows up underneath the Libraries node right above the Java Platform
node.
- Read-only name: <server-name>
- Tooltip: None
- Contextual menu:
Show Javadoc
Find...
Figure: Project Properties dialog
+--------------------------------------------------------------------------------------------+
| Project Properties - My EJB Module |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | |
| | Libraries | |
| | | |
| | Build | |
| | Compiling | |
| | Packaging | |
| | Documenting | |
| | | |
| | Run | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+
Components of this dialog are:
- Categories list (C) - displays a list of
property
categories.
- OK button - closes the dialog and commits the
changes.
- Cancel button - closes the dialog and cancels
the changes.
Figure: Sources properties panel
+--------------------------------------------------------------------------------------------+
| Project Properties - My App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| |/Sources////////| Project Folder: |_/home/me/work/My App________________________________| |
| | Libraries | |
| | | Configuration Files Folder: |_/home/me/work/My App/conf_| [ 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:
- Project Folder non-editable text field (P) -
displays the
project folder.
- Configuration Files Folder editable text field
(i) -
specifies the location of deployment descriptors.
- Browse (Configuration
Files
Folder) button (e) - opens a file chooser titled Browse
Configuration
Files Folder with OK
and Cancel buttons for
selecting the
configuration files folder.
- For description of other component see J2SE
Project UI Spec.
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 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 (Projects Used as Libraries) |
| | | |
| | | 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 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 (Projects Used as Libraries) |
| | | |
| | | 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 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 (Projects Used as Libraries) |
| | | |
| | | 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:
The user can change Javac options in this panel.
Figure: Compiling properties panel
+--------------------------------------------------------------------------------------------+
| Project Properties - My 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
The Packaging panel allows the user to modify properties of creating
jar from a project.
Figure: Packaging properties panel
+------------------------------------------------------------------------------------------+
| Project Properties - My App |
+------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | JAR File: |_/home/me/My App/dist/My-App.jar_________________________| |
| | Libraries | |
| | | Exclude From JAR File: |_**/*.java,**/*.form________________________| |
| | Build | [ ] Compress JAR File |
| | Compiling | |
| |///Packaging////| |
| | Documenting | |
| | | |
| | Run | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+------------------------------------------------------------------------------------------+
Components of this dialog are:
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 of this dialog are:
The Run panel allows the user to customize execution properties of
project.
Figure: Run properties panel
+--------------------------------------------------------------------------------------------+
| Project Properties - My App |
+--------------------------------------------------------------------------------------------+
| Categories: |
| +----------------+ |
| | Sources | Server: |_Sun Java System Application Server 8________________v_| |
| | Libraries | J2EE Version: |_J2EE 1.4_________| |
| | | |
| | Build | |
| | Compiling | |
| | Packaging | |
| | Documenting | |
| | | |
| |/Run////////////| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +----------------+ |
| [[ OK ]] [ Cancel ] |
+--------------------------------------------------------------------------------------------+
Components of this dialog are:
- 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 text field (J) -
specifies the J2EE
version. It is disabled and shows J2EE 1.4 value.
Icons
Symbol
|
Name of the node
|
Icon
or folder badge
|
Label (in brackets) and description
|
[A]
|
EJB Module
|
**
|
<
name of EJB Module >
|
[R]
|
Server Resources
|
 |
Server
Resources - container for all server resources. |
[r]
|
Server Resource
|
 |
<
name of the resource file > - one server resource node. |
[E]
|
Enterprise Beans
|
*
|
Enterprise
Beans - container for all enterprise beans within the module
(ordered
alphabetically), sorted alphanumerically. Node is expanded by default.
|
[e]
|
Entity EJB |
 |
<name of
an entity bean > - individual
entity
ejb node
|
[m]
|
Message EJB
|
 |
<name of
a message-driven bean > -
individual
message ejb node |
[s]
|
Session EJB
|
 |
<name of
a session bean > - individual
session ejb node |
[W]
[G]^
|
Web Services
Web Service
Clients
Web Services Group
|
*
|
Web
Services - container for all webservices within the module,
ordered
alphanumerically.
Web Service Clients - used
in web applications
<name of the Web Services
group> - groups web services in the Web Services Registry
|
[W]^
|
Web Services Registry
|

|
Web
Services - container for all webservices registered in the IDE
(it is a tree in the Runtime Registry)
|
[w]
|
Web Service
|

|
<
name of a webservice > - individual webservice node (child of
Web Services and Web Service Clients)
|
[P]
|
Web Service Port
|
*
|
<
name of port > - A port of a web service. Used as child of Web Service in Web Service Clients and Web Service Registry. Contains
operations.
|
[C]
|
Configuration files
|
**
|
<
Configuration Files > - shows the content of the "conf"
folder, ordered
alphanumerically
|
[c]
|
Configuration file
|
**
|
<
configuration filename > - xml or special xml config file
icon
|
[S]
|
Source Packages
|
***
|
<Source
Packages> - container for all source files |
[p]
|
Package
|
***
|
<name
of the package> java package icon
|
[j]
|
Java class
|
***
|
<name
of the class> java class icon |
[F]
|
CMP fields
|

|
<
CMP Fields > - contains all CMP fields, ordered
alphanumerically
|
[f]
|
CMP field |
|
<
name of the CMP field > - individual field
|
[l]
|
CMR field
|

|
<
name of the CMR field > - individual field referencing
another Entity EJB or a collection of Entity EJBs
|
[M]
|
Local Methods
|

|
<
Local Methods > - contains a subset of methods exposed in a
local interface, ordered
alphanumerically
|
[R]
|
Remote Methods
|

|
<
Local Methods > - contains a subset of methods exposed in a
remote interface, ordered
alphanumerically |
[g]
|
plumbing method
|

|
<
name of the method > - name of the plumbing method, i.e.
create (currently we're not showing ejbPostCreate, setSessionContext
and other plumbing methods)
|
[h]
|
home method
|

|
<
name of the method > -
name of the home method without the ejbHome prefix, i.e. using the name from the home interface,
i.g. ejbHomeMyMethod will be shown as myMethod
|
[i]
|
finder method
|

|
<
name of the method > - the name of the finder method without
the ejbFind prefix plus find prefix, i.e. using the name from the home interface,
i.g. ejbFindSomething will be shows as findSomething
|
[k]
|
select method
|
same as for finder method
|
<
name of the method > - the name of the select method,
including ejbSelect prefix, i.g. ejbSelectSomething
|
[n]
|
business method
|

|
<
name of the method > - business method (used for getters and
setters as well, altough they don't provide any business logic in most
cases)
|
[p] [o]^
|
operation
|
same as for business method |
<
name of the operation > - WS operation, implemented as a
public method in WS's Session Bean impl. class and exposed in the SEI
interface
|
|
error glyph
|
F
|
Used on the icon of deployment
descriptor if it is invalid.
|
|
please wait glyph
|
F |
Used on the symbol of WS when it
is being analyzed/compiled in the background.
|
|
Servers
|

|
Servers
- Container node of the Runtime View; it contains all registered server
instances
|
|
SJSJAS
|

|
Sun
Java System Application Server - an instance of SJSAS
|
|
Tomcat
|

|
Tomcat
- an instance of Tomcat
|
Notes:
* The icon is a badge for a folder.
** The icon is identical with the one introduced in
Enterprise
Application Project UI spec.
*** The icon is identical with the used in standard Java projects.
^ Symbol used in other UI spec, the icon is referenced from it.
F The icon is a badge for another icon.