GlassFish Project - Web Services Management home page

New to GlassFish | Community Guidelines  | Downloads | FAQHow-Tos

Welcome to the Web Services Management page. This page is dedicated to discussing the collection new Web Services Management features in GlassFish. The source code for these features is part of this cvs repository.

Web Services Management News

Page Contents


In Glassfish, all web service endpoints are discovered and shown distinctly, so they can be managed.  Response times and invocation counts are tracked and this performance information can be graphed in real time. Alerts can be generated on various boundary conditions including resposetime time and through put failures. Web Service invocation content can be viewed in XML. Runtime message transformation can be achieved using XSLT.  Here is an overview of the Architecture of the Web Services Management in GlassFish.

Figure 1: Web Services Management Architecture

Our approach does not require developers to change the Web service implementation or their clients - no retrofitting the code with proprietary controls, inserting proprietary headers or using proprietary APIs. This non-invasive approach guarantees that user can add management (even after development) without disrupting the client side or the server side. The following sections describe each feature in detail.

Figure 2: Web Services Management Features
LOW - At this setting, response time, throughput, total # of requests, and faults are monitored for the whole web service. No method level monitoring is done at this level.
HIGH - At this setting, apart from the above mentioned attributes. Message Trace (Content Visualization) is enabled.
OFF -  no monitoring data is collected.

Message Visualization

When enabled, it will be possible to see last N (default is 25) messages for a Web Service end point. These messages will be kept in memory of the remote server instances. Details of SOAP request, response and HTTP header information will be available.


User will be able to apply XSLT transformation rules per web service end point. This enables fine grained control of Web Services request and response. Multiple XSLT rules can be applied to a web service end point method. The order in which the transformations are applied is deterministic and can be configured. All the XSLT files will be stored in the "generated/xml/<appOrModule>" directory of Central Repository. These transformation rules will be synchronized to the remote server instances.


A web service can be Published(Advertised)/Unpublished(unadvertised) to the JES registry and can be discovered  from the JES Registry. Publish/Unpublish WS to external registries and Discover them from external registries.

The Configuration Model

New element called web-service-endpoint is added as child element to j2ee-application, ejb-module and web-module elements. Other 2 new config elements are transformation-rule and registry-location.  These relevant config elements are listed in ws-mgmt-config.dtd. For the complete server configuration model, please refer to sun-domain_1_2.dtd

CLI Commands

Please refer to CLI command reference page for the list of commands available for Web Services Management. The common CLI command usage is illustrated here.


The GlassFish Web Services management code is located in ws-mgmt sub module in the repository. The following describes all the sub packages in this module.

The Agent sub-package, which registers call back/listeners with JSR 109 Implementation. These callback provides the information required for web services management.

Filter sub-package contains the code that executes a management function on these callback. Examples of a Filter is a Monitoring Filter, Transformation Filter or Message Filter.

Lifecycle manages enabling and disabling of the filters. This lifecycle code kicks in both on server initialization and dynamic reconfiguration after startup.

Transformation implementation is in Transform directory. Message Transformation Filters and data collection logic is in Msg and the underlying Pool implementation is Pool .

The following diagram shows the sub packages in Web Services Management backend.

Figure 3: Web Services Management Backend Internals

Unit/Acceptance Tests

Running the Quicklook tests is required in this section. In addition to the Quicklook tests the Web Services Management module has unit tests developed which need to pass prior to checking in any code. The setup for running unit tests is the same as the Quicklook tests. To run just the web services management unit tests do the following:
Go to glassfish/admin/mbeanapi-impl/tests
You will need to change host/port/user/password properties in
maven runtest
Please follow the instructions in the file amx-unit-tests.html
This will build and run all the all the AMX unit tests including the tests in  tests/com/sun/enterprise/management/ext/wsmgmt. See the amx-unit-tests.html for more details.

Supporting Documentation

This section will be updated with useful documents and information about the Web Services Management - Tutorials, Blogs and other useful links.

ToDo List

The following is non-comprehensive list of developer friendly  web services management ToDo features. Please email us if you have questions about current implementation or would like to contribute towards future ToDo list.