PluginOptionsUI

SJSAS/GF Options UI Specification

Author: Vince Kraemer
$Revision$
$Date$

The current steps required for a user to discover that there are settings available to customize the behavior of the plugin is far from ideal. The limitations of the "old" options dialog have been compounded by the switch to the new options dialog. The SJSAS/GF plugin has a few customizable settings, exposed in NB 5.5, and more are under consideration. Keeping them exposed via the old options UI would limit their value. In this proposal, we move some of the current global setting to be visible from the server manager. Options that remain at the "global" level for the plugin will still be editable via existing mechanism.

Use Cases and Scenarios

Discover Per-Domain Settable Options

The user has gotten the advice to "change the ABC option, associated with the target server" (which is a SJSAS/GF domain) to help diagnose an issue, resolve a problem, or alter the behavior of the integration with a particular domain. The user should be able to discover the panel to alter the settings with few user gestures.

  • the user receives advice to change a domain/instance/target server option
  • the user opens the Server Manager
  • the user selects the domain/instance that they want to change the setting for
  • the tabbed panel on the right side of the dialog appears.
  • one of the tabbed panels is titled Options.

Alter deployment style

The plugin can support two deployment styles; archive based and directory based. Currently, directory based deployment is the preferred style for web modules deployed to local domains. Other modules will start to support directory based deployment in the NB 6.0 timeframe. Occasionally, errors in the deployment process prevent this preferred method from being successful. When that happens, the user may be able to make progress by forcing the archive based deployment strategy to be used.

  • User selects Tools->Server Manager
  • Server Manager dialog appears
  • User selects the domain/instance/target server from the list on the right.
  • the SJSAS/GF property panels appear
  • The user selects the Options panel
  • the user sees the option labelled, "Directory based deployment enabled", which is checked.
  • they uncheck the option and dismiss the dialog.


Change the timeout applied to starting the server

When the user starts the server in "Profiling mode" the command that the plugin uses to start the server doesn't return "normally", so the plugin polls the server to determine whether it has started up successfully. The length of time that it takes the server to start up is dependent on a number of factors, that make it hard to define a single value which will be correct. Allowing the user to alter this timeout allows them to minimize the amount of time that the polling is being done, in situations where the startup has failed.

  • User selects Tools->Server Manager
  • Server Manager dialog appears
  • User selects the domain/instance/target server from the list on the right.
  • the SJSAS/GF property panels appear
  • The user selects the Options panel
  • User sees the label, "Startup processing (in seconds): ", next to a field with an intger value.


SH: Do not forget that j2eeserver has also its timeouts and thus timeout defined in the plug-in cannot be higher then in the j2eeserver. The j2eeserve has always the last word;) I agree that it make sense being able to define timeouts per instance, or at least per plug-in but the con is more complex UI which is less user friendly. BTW, if we decide to have this per instance timeouts, we should probably provide some support for it in the j2eeserver, see ServerCustomizerSupport.

The mechanism to communicate these timeouts to other modules, like j2eeserver, will be based on InstanceProperties.

Change the timeout applied to deploying an application

The plugin currently includes a hard-coded timeout for calls that deploy applications and modules to a domain. This timeout may not be long enough to allow some (large) applications to deploy. The time that it may take to deploy an application varies based on a number of factors that make selecting a hard-coded timeout impossible. Allowing the user to alter the timeout used for deployment will allow the user to prevent false "deployment failure" errors.

  • User selects Tools->Server Manager
  • Server Manager dialog appears
  • User selects the domain/instance/target server from the list on the right.
  • the SJSAS/GF property panels appear
  • The user selects the Options panel
  • User sees the label, "Deployment processing timeout (in seconds): ", next to a field with an intger value.

Control JDBC Driver Deployment

The plugin supports "automatic" JDBC Driver deployment when deploying an application to a local domain. This capability is enabled by default. There are a couple side-effects that users may want to avoid, when this feature is enabled:

  • driver detection has to happen. This takes some time to do.
  • server restarts when the driver gets deployed. This only happens the first time, but it may still be an issue.
  • User selects Tools->Server Manager
  • Server Manager dialog appears
  • User selects the domain/instance/target server from the list on the right.
  • the SJSAS/GF property panels appear
  • The user selects the Options panel
  • the user sees the option labelled, "JDBC Driver(s) Deployment Enabled", which is checked.
  • they uncheck the option and dismiss the dialog.

Dynamic Help

Each of the controls on this UI control a fairly esoteric part of the plugin's functionality. Since the help button for this dialog links to a single page, it is hard for users to discover what the effect of these controls will have.

An easy way to deal with this is to add a label, below the last control, that changes as the focus changes between th controls on this page.

The content would summarize the effect of manipulating the control. The exact content of the label is still under discussion.


Specification

Per-Domain Settings Panel

 '''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_''''''_'''_
/ Connection / Classes / Sources / JavaDoc // Options |
-----------------------------------------------------------------
|
| Startup Timeout [S]:    |'''_''''''_'''120|
| Deployment Timeout [S]: |'''_''''''_'''120|
| [X] Directory Based Deployment
| [X] JDBC Driver(s) Deployment Enabled
|     <dynamic help text -- content of message follows the focus>
|
+------------------------------------------------------------------------
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo