J2EE Server Management UI Spec
Author: Jiri Kopsa, Ann Sunhachawee, Jan Rojcek
$Revision: 1.3 $
$Date: 2005/04/26 15:53:41 $
This document specifies the UI for management of J2EE server
instances,
that are used to compile and run Web Applications, EJB Modules
and Enterprise Applications.
Table of Contents:
A server instance consists of:
- set of libraries (used for compilation), javadocs and sources,
- deployment information (i.e. host name and port of the server,
admin's user name and password, etc.).
Before a server instance can be used, it has to be registered within
the IDE. The server instances can be registered and managed in the
Server Manager and Runtime Window.
When a project is created, the user has to select a server instance
that will be used for compilation and deployment (target server instance). The user
can later select a different target server instance in the project
properties dialog.
The Server Manager is a counter part of Java Platform manager in
the J2EE world. It is activated by the Server
Manager item from the Tools
menu. It is a modal dialog with following structure:
Figure: Server Manager dialog for Sun App Server
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Sun Java System Application Server 8___| |
| |//Sun Java System Appli./| Server Type: |_Sun Java System Application Server 8___| |
| | Tomcat 5 | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | <Server Type Specific Section> |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| +-------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Servers list (S) - shows the list of all
registered server instances.
- Add Server button (A) - opens the Add Server wizard.
- Remove button (R) - removes the selected
server from the
list. Disabled if the bundled Tomcat is selected.
- Server Name read-only text field (N) - shows
the name of
selected server.
- Server Type read-only text field (N) - shows
the type of
selected server.
Figure: Server Manager dialog for Sun App Server
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Sun Java System Application Server 8___| |
| |//Sun Java System Appli./| Server Type: |_Sun Java System Application Server 8___| |
| | Tomcat 5 | |
| | | ____________ ___________ __________ __________ |
| | | / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | | | \---------------------------------------+ |
| | | | | |
| | | | Location: |_localhost:4848_________________| | |
| | | | | |
| | | | Admin Username: |________________________________| | |
| | | | Admin Password: |________________________________| | |
| | | | | |
| | | | Domains Folder: |________________________________| | |
| | | | Domain: |____________________| | |
| | | | | |
| | | | | |
| | | | | |
| +-------------------------+ +-----------------------------------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Location noneditable text field - host name
and port of the server instance
- Admin Username editable text field (U)
- Admin Password editable password field (P)
- Domains Folder
noneditable text field
- Domain noneditable text field
Figure: Server Manager dialog for Tomcat
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Tomcat 5_______________________________| |
| | Sun Java System Appli..| Server Type: |_Tomcat 5_______________________________| |
| |//Tomcat 5///////////////| ____________ ___________ __________ __________ |
| | | / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | | | \---------------------------------------+ |
| | | | | |
| | | | Server Folder: |____________________| [ Browse... ] | |
| | | | | |
| | | | [ ] Use Base Folder for Configuration and Deployment| |
| | | | Base Folder: |____________________| [ Browse... ] | |
| | | | | |
| | | | User Name: |_________________| (for "manager" role) | |
| | | | Password: |_________________| | |
| | | | | |
| | | | [x] Enable HTTP Monitor | |
| | | | | |
| | | | | |
| +-------------------------+ +-----------------------------------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Server Folder editable text field (F) -
specifies the
location of Tomcat installation.
- Browse (Server Folder) button (o) - opens a
file chooser
titled Browse Server Installation Folder with OK
and Cancel buttons. The Files
of
Type combo box shows one value - Folder. The
initial
browse location is the user home.
- Use Base Folder for Configuration and Deployment
check
box (C) - specifies that a separate folder should be used for server
configuration and deployment.
- Base Folder editable text field (B) -
specifies the
location of base directory. Disabled together with its label, if the Use
Base Folder... checkbox is unchecked.
- Browse (Base Folder) button (e) - opens a file
chooser
titled Browse Server Installation Folder with OK
and Cancel buttons. The Files
of
Type combo box shows one value - Folder. The
initial
browse location is the user home.
- User Name editable text field (U) - specifies
the manager
role user name.
- Password editable text field (P) - specifies
the password.
- Enable HTTP Monitor check box - specifies
whether to use
HTTP monitor or not.
Server Manager - Classes
Tab
Figure: Server Manager dialog showing Classes Tab
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Sun Java System Application Server 8___| |
| |//Sun Java System Appli./| Server Type: |_Sun Java System Application Server 8___| |
| | Tomcat 5 | ____________ ___________ __________ __________ |
| | | / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | | +------------/ \--------------------------+ |
| | | | Server Classpath: | |
| | | | +-------------------------------------------------+ | |
| | | | | /opt/SunAppServer8/lib/j2ee.jar | | |
| | | | | ... | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | +-------------------------------------------------+ | |
| +-------------------------+ +-----------------------------------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Server Classpath list (C) - shows the list of
server JAR
files that are needed for compilation
Server Manager - Sources
Tab
This tab contains the
sources of the server, that can be used for debugging. The sources are
not usually bundled in the distribution; this list can be empty.
Figure: Server Manager dialog showing Sources Tab
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Tomcat 5.5.1___________________________| |
| | Sun Java System Applica| Server Type: |_Tomcat 5.5_____________________________| |
| |//Tomcat 5///////////////| ____________ ___________ __________ __________ |
| | | / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | | |-------------------------/ \--------------+ |
| | | | Server Sources: | |
| | | | +---------------------------+ | |
| | | | | /opt/tomcat-5.5.1/src/jaka| [ Add JAR/Folder... ] | |
| | | | | | | |
| | | | | | [ Remove ] | |
| | | | | | | |
| | | | | | [ Move Up ] | |
| | | | | | [ Move Down ] | |
| | | | | | | |
| | | | | | | |
| | | | +---------------------------+ | |
| | | | | |
| +-------------------------+ +-----------------------------------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Server Sources list (v): Shows the list of
server sources. The items can be either folders or JAR files.
- Add JAR/Folder button (J): Opens a file
chooser named Add JAR/Folder for selecting a jar, zip
or folder on the disk. The file chooser has Add JAR/Folder
and Cancel buttons. The File of Types
shows one item: Sourcepath Entry (Folder, JAR or Zip File).
Always enabled.
- Remove button (m): Removes the selected item
from sources list. Enabled only if an item in the sources list is
selected.
- Move Up/Down buttons (U/D): As usual.
Server Manager - Javadoc
Tab
The list on this tab
contains Javadoc for the J2EE API plus additional documentation that
comes with the server, its sources or libraries. The J2EE 1.4 API
documentation is bundled with the IDE and is added automatically to
this list.
Figure: Server Manager dialog showing Javadoc Tab
+-------------------------------------------------------------------------------------+
| Server Manager |
+-------------------------------------------------------------------------------------+
| Servers: |
| +-------------------------+ |
| |J2EE Servers | Server Name: |_Sun Java System Application Server 8___| |
| |//Sun Java System Appli./| Server Type: |_Sun Java System Application Server 8___| |
| | Tomcat 5 | ____________ ___________ __________ __________ |
| | | / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | | |-------------------------------------/ \--+ |
| | | | Server Javadoc: | |
| | | | +---------------------------+ | |
| | | | | .../j2eeri-1-4-doc-api.zip| [ Add Zip/Folder... ] | |
| | | | | | [ Add URL... ] | |
| | | | | | | |
| | | | | | [ Remove ] | |
| | | | | | | |
| | | | | | [ Move Up ] | |
| | | | | | [ Move Down ] | |
| | | | | | | |
| | | | +---------------------------+ | |
| | | | | |
| +-------------------------+ +-----------------------------------------------------+ |
| [ Add Server...] [ Remove ] |
| |
| [[ OK ]] [ Cancel ] |
+-------------------------------------------------------------------------------------+
Components of this dialog are:
- Server Javadoc list (J): Shows the list of
library javadoc items. The items can be either folders or Archive
files.
- Add Zip/Folder button (Z): Opens a file
chooser with "Add Zip/Folder" and "Cancel" buttons allowing the user to
add a zip archive or folder to the list of sources. Always enabled.
- Add URL button (L): Opens a Add URL
dialog asking the user for specifying the URL to add. Always enabled.
- Remove button (m): Removes the selected item
from the javadoc list. Enabled only if an item in the javadoc list is
selected.
- Move Up/Down buttons (U/D): As usual.
Figure: Server Type and Name wizard panel
+----------------------------------------------------------------------------+
| Add Server |
+----------------------------------------------------------------------------+
| Server Type and Name |
| -------------------------------------------------------------------------- |
| |
| Chooser server type and specify name of the server to add. |
| |
| Server: |_Sun Java System Application Server 8_________________________v_| |
| Name: |_Sun Java System Application Server 8___________________________| |
| |
| |
| |
| |
+----------------------------------------------------------------------------+
Components of this wizard panel are following:
- Server read-only combo box (S) -
- Name editable text field (N) -
Wizard buttons' behavior:
- Back button - always enabled.
- Next button - enabled only if a server name is
valid.
- Finish button - always disabled.
In-line error messages:
-
Figure: Connection wizard panel (current state)
+----------------------------------------------------------------------------+
| Add Sun Java System Application Server 8 |
+----------------------------------------------------------------------------+
| Connection |
| -------------------------------------------------------------------------- |
| |
| Specify server location and login details. |
| |
| Location: |_localhost:4848__________________________________________|_v_| |
| (host:port) |
| |
| Admin User Name: |_______________________________________________________| |
| Admin Password: |_______________________________________________________| |
| |
| |
| Specify the server folder and domain if it is installed locally. |
| |
| Server Folder: |___________________________________________| [ Browse... ] |
| Domain: |___________________________________________| |
| |
| |
+----------------------------------------------------------------------------+
Components of this wizard panel are following:
- Location editable combo box (L) -
- Admin User Name editable text field (U) -
- Admin Password editable text field (P) -
- Server Folder editable text field (S) -
- Browse button (B) -
- Domain editable text field (D) -
Wizard buttons' behavior:
- Back button - always enabled.
- Next button - enabled only if all values are
valid and location, user name and password are non-empty.
- Finish button - always disabled.
In-line error messages:
-
Figure: Connection wizard panel (alternative design)
+----------------------------------------------------------------------------+
| Add Sun Java System Application Server 8 |
+----------------------------------------------------------------------------+
| Server Instance |
| -------------------------------------------------------------------------- |
| |
| Specify the location of local instance of the server. This needs to be |
| specified for remote servers as well in order to build the projects. |
| |
| Installation Folder: |_____________________________________| [ Browse... ] |
| |
| Specify the server server instance details. |
| |
| (o) Local Server Instance |
| |
| Domain: |_domain1 (localhost:4848)______________v_| [ New Domain] |
| |
| ( ) Remote Server Instance |
| |
| Host: |_________________________________________| |
| Admin Port: |_4848____| |
| Domain: |_domain1_________________________________| [ New Domain] |
| |
| Specify the login details. |
| |
| Admin User Name: |_________________________________________| |
| Admin Password: |_________________________________________| |
| |
| |
+----------------------------------------------------------------------------+
Components of this wizard panel are following:
- Installation Folder - a
folder that contains a local instance of the SJS Application Server.
The value of the field defaults to the location of a known local
instance (if any). This reduces the number of steps in certain cases
(e.g. using both a local and a remote instance).
- Domain comboboxes -
contain lists of domains defined in the local or remote Application
Server. The remote domains combobox is refilled when the host is
entered or host or port is changed. If the chosen domain is
"read-only", a warning message "The domain is read-only!" is shown and
the Finish button is disabled.
- New Domain button - pops
up the New Domain dialog. If the dialog is confirmed, the created
domain is selected in the accompanied combobox.
Figure: New Domain dialog
+-----------------------------------------------------------------+
| New Domain |
+-----------------------------------------------------------------+
| |
| Domain Name: |_____________________________| |
| Domain Folder: |_____________________________| [ Browse... ] |
| |
| Admin User Name: |____________________| |
| Password: |____________________| (minimum 8 characters) |
| Re-type Password: |____________________| |
| |
| Admin Port: |_4848__| |
| HTTP Port: |_8080__| |
| HTTPS Port: |_8181__| |
| |
| [ OK ] [ Cancel ] |
+-----------------------------------------------------------------+
Figure: Connection wizard panel
+----------------------------------------------------------------------------+
| Add Tomcat 5 Server |
+----------------------------------------------------------------------------+
| Connection |
| -------------------------------------------------------------------------- |
| |
| Specify the server folder and login details. |
| |
| Server Folder: |___________________________________________| [ Browse... ] |
| |
| [ ] Use Base Folder for Configuration and Deployment |
| Base Folder: |___________________________________________| [ Browse... ] |
| |
| User Name: |________________________________________| (for "manager" role) |
| Password: |________________________________________| |
| |
| |
| |
| |
+----------------------------------------------------------------------------+
Components of this wizard panel are following:
- Server Folder editable text field (F) -
specifies the
location of Tomcat installation.
- Browse (Server Folder) button (o) - opens a
file chooser
titled Browse Server Installation Folder with OK
and Cancel buttons. The Files
of
Type combo box shows one value - Folder. The
initial
browse location is the user home.
- Use Base Folder for Configuration and Deployment
check
box (C) - specifies that a separate folder should be used for server
configuration and deployment.
- Base Folder editable text field (B) -
specifies the
location of base directory. Disabled together with its label, if the Use
Base Folder... checkbox is unchecked.
- Browse (Base Folder) button (e) - opens a file
chooser
titled Browse Server Installation Folder with OK
and Cancel buttons. The Files
of
Type combo box shows one value - Folder. The
initial
browse location is the user home.
- User Name editable text field (U) - specifies
the manager
role user name.
- Password editable text field (P) - specifies
the password.
Wizard buttons' behavior:
- Back button - always enabled.
- Next button - enabled only if all values are
valid and location, user name and password are non-empty.
- Finish button - always disabled.
In-line error messages:
-
A Server Properties dialog opens from the server instance contextual
menu and
allows the user to change the server properties. It shows the same
panel as the
panel used in the Server Manger dialog for every server instance.
Sun App Server Properties
Figure: Sun App Server Properties dialog
+---------------------------------------------------------------------+
| Sun Java System Application Server 8 - Properties |
+---------------------------------------------------------------------+
| |
| Server Name: |_Sun Java System Application Server 8_______________| |
| Server Type: |_Sun Java System Application Server 8_______________| |
| |
| ____________ ___________ __________ __________ |
| / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | \---------------------------------------------------+ |
| | | |
| | Location: |_localhost:4848_______________________________|_v_| | |
| | | |
| | Admin User Name: |____________________________________________| | |
| | Admin Password: |____________________________________________| | |
| | | |
| | Server Folder: |________________________________| [ Browse... ] | |
| | Domain: |________________________________| | |
| | | |
| | | |
| | | |
| +-----------------------------------------------------------------+ |
| |
| [[ OK ]] [ Cancel ] |
+---------------------------------------------------------------------+
Components of this dialog are:
Tomcat Server Properties
Figure: Tomcat Server Properties dialog
+---------------------------------------------------------------------+
| Tomcat 5 - Properties |
+---------------------------------------------------------------------+
| |
| Server Name: |_Tomcat 5___________________________________________| |
| Server Type: |_Tomcat 5___________________________________________| |
| ____________ ___________ __________ __________ |
| / Connection \/ Classes \/ Sources \/ Javadoc \ |
| | \---------------------------------------------------+ |
| | | |
| | Server Folder: |________________________________| [ Browse... ] | |
| | | |
| | [ ] Use Base Folder for Configuration and Deployment | |
| | Base Folder: |________________________________| [ Browse... ] | |
| | | |
| | User Name: |_____________________________| (for "manager" role) | |
| | Password: |_____________________________| | |
| | | |
| | [x] Enable HTTP Monitor | |
| | | |
| | | |
| +-----------------------------------------------------------------+ |
| |
| [[ OK ]] [ Cancel ] |
+---------------------------------------------------------------------+
Components of this dialog are:
This window serves to view and manage server instance's content. It
also displays database servers and web services.
The child nodes of each individual server instance are provided by
the
plugin. They are not discussed here (they are same as those of
individual servers in previous versions of NetBeans IDE). The
difference is, that the servers were grouped by plugin in previous
version.
Figure: Servers node in Runtime window
+-----------------------------------------------------+
| Runtime |
+-----------------------------------------------------+
| [S] Servers |
| +- [s] Sun Java System Application Server 8 |
| +- [t] Tomcat 5 |
| [W] Web Services |
| [D] Database Drivers |
| ... |
| |
| |
| |
| |
| |
+-----------------------------------------------------+
[S] - Servers node icon
[s] - Sun Java System Application Server 8 icon
[t] - Tomcat Server node icon
[W] - Web Services node icon
Node: Servers
- Read-only name Servers
- Tooltip: Application and Web Servers
- Contextual menu:
Add Server...
- Add Server - opens the Add Server Instance wizard
Node: Sun App Server instance
Node: Tomcat Server instance
| Tools |
---------
...
Library Manager
Java Platform Manager
Server Manager
-----------------------------------------------
Setup Wizard
...
Behavior of Tools menu items is following:
- Server Manager - opens the Server Manager
dialog.
Open Issues, Missing or Planned Features,
TODOs
This is a list of know issues and UI specificaiton vs implementation
inconsistencies. The major items are highlighted.
Status
|
Summary
|
Description
|
Issued, no conclusion yet
|
Removal confirmation in Server
Manager |
http://www.netbeans.org/issues/show_bug.cgi?id=54617 |
Issued, no conclusion yet
|
Unify the wording: "Server" to
"Server Instance" |
http://www.netbeans.org/issues/show_bug.cgi?id=54617
|
Design needs to be precised
|
Wrong layout and wording in the
Server Manager tab panes
|
SJSAS:
Labels are out of spec: Admin Username, Admin Password, Domains Folder,
Domain
The word "domain" needs to be discussed. Instance name would be better
(and in sync with wizard and help set) but there is conflict with the
name under which the server instance is registered in the IDE.
The components left borders should be aligned.
Tomcat:
Connection tab is missing in implementation. Design needs to be
precised and brought in sync with the Add Server Instance wizard.
All:
The spacing between the components and the border of the tabbed panes
should be 12 pixels (or 6 pixels).
The names of the tabs (especially Connection) and the titles of the
lists should be polished (e.g. "Server Javadoc" is not optimal);
currently they are different from the spec. The titles of the lists
should be terminated with colons.
|
Design needs to be precised
|
Enabling HTTP monitor
|
The Add Server Instance wizard
allows to enable/disable HTTP monitor for Tomcat, but does not allow it
for SJSAS.
|
Designed, not implemented,
to be issued
|
Sources tab
|
User should be able to attach
soruces to registered server instance.
|
Designed, not implemented,
to be issued |
Javadoc tab
|
User should be able to attach
Javadoc to registered server instance. |
Design needs to be precised
|
Tomcat Server Instance
Properties dialog |
Not implemented for Tomcat (it's
still using the Properties table).
The UI spec version shows a partially different set of properties.
|
To be issued
|
SJSAS Server Instance Properties
dialog title
|
The SJSAS Properties dialog has
a wrong title. It should be "<server instance name> - Properties"
instead of "Properties".
|
Needs
to be designed
|
Logging
|
Currently
only one log file can
be shown, but there may be more than just one log file.
There are also some minor issues:
- Tomcat server instance should have action "View Server Log" instead
of "View Server Output"
- Titles of the Server Log tabs (in the Output Window) does not comply
with the UI spec.
Tomcat: "<server instance>"
SJSAS: "<server-host>:<server-port>"
Should be: "<server-host>:<server-port> [Server Log]"
- but it might be too long, this needs to be discussed
|
To be issued
|
Server Instance tooltips
|
Tooltips on the server instance
nodes does not comply with the UI specs
|
Needs
to be designed
|
Add
Server Instance wizard |
The
SJSAS step #2 (and the
first-time step #2 - setting the SJSAS installation location) needs to
be redesigned.
There are also some minor issues:
- Titles of the step are invalid and inconsistent; both in UI spec and
implementation, e.g. the title "Connection" is wrong, the "Choose
Server" in impl. is also wrong, etc.
- The layout of step #2 in Tomcat is odd (invalid spacing by the left
border), the wording and logic (of the basefolder checkbox) does not
comply with the UI spec.
|
To be discussed
|
Missing "Add URL..." button in
Java doc pane |
It was designed but wasn't
implemented.
It isn't neither in the Java Platform Manager.
|
| Needs
to be designed |
Starting
and stopping server
|
Needs
to be redesigned with the
background process management in mind.
|
To
be discussed
|
Server
Instance subtrees
|
Their
content needs to be
discussed and designed.
|
To be discussed
|
Uploading libraries
|
Might be done within the zero
configuration deployment effort.
|
To be discussed
|
Bundled servers names
|
Currently it's "Bundled Tomcat
(5.5.7)" for Tomcat. Is it important to say that the server is bundled?
Should be the users able to unregister a bundled server?
|
To be done
|
Icons
|
The three server icons should be
moved from the EJB Module Project UI spec to this one.
|
Design needs to be precised
|
Normal vs Debug mode not clearly
shown
|
http://www.netbeans.org/issues/show_bug.cgi?id=56423
|