Managing Service Groups
A Service Group is a convenient way of deploying multiple services in one service archive file. There is a logical relationship between the services at runtime. The only difference in the services.xml
for a service group and a single service is its root element. For a service group, the root element is <serviceGroup
>, and we have multiple <service
> elements inside the <serviceGroup
> element.
For example,
<serviceGroup> <service name=Test1> ... <service> <service name=Test2> ... </service> </serviceGroup>
The WSO2 Carbon provides the following functions to manage the service groups:
- Managing the parameters of the service group.
- Managing the module engagements.
- Creating the archive file.
Accessing Service Groups
Follow the instructions below to manage the parameters of a service group.
1. Sign in. Enter your user name and password to log on to the ESB Management Console.
2. Click on "Main" in the left menu to access the "Manage" menu.
3. In the "Manage" menu, click on "List" under "Web Services."
4. The "Deployed Services" screen appears.
5. Click on the "deployed service group(s)" link to access the Deployed Service groups.
6. In the next "Deployed Service Groups," click on the necessary service group to see the "Service Group Dashboard" screen.
Managing the Parameters of the Service Group
1. In the "Actions" panel, select "Parameters."
2. Parameters can be defined inside the services XML
as an immediate child element of the service element. These parameters can be accessed using the message context (at the runtime) or AxisService
or AxisOperation
. A parameter has two attributes:
- name - The mandatory attribute which specifies the name of a parameter.
- locked - The optional attribute. The idea of a "
locked
" attribute is to express whether we allow the parameter value to be overridden by a child node in the hierarchy.
For example, if a parameter was added in the axis2.xml
file setting the "locked
" attribute to "True," then if a service tries to add another parameter with the same name, it will give an exception.
The WSO2 Carbon provides an easy method to generate the Service Group parameters.
Click on the "Add New..." button to generate a new service parameter.
3. The "WSO2 Carbon" window appears. Enter the parameter's name and click "OK" to add the parameter to the list.
4. Enter the parameter's value.
5. Click on the "Update" button to save new parameters in the service group.
6. If you want to delete a parameter, click on the "Delete" button.
7. Confirm your request by clicking "Yes" in the "WSO2 Carbon" window.
Managing the Module Engagements
There may be some instances where it's impossible to run the service without engaging the WS-Security module into the service. Engaging a module is just a matter of adding a module tag into the services XML
. If the module is available, then the engaging will take place, else it will be a faulty service.
Follow the instructions below to engage a module into a service group (see also Module Engagement for Service).
1. In the "Actions" panel, select "Modules."
2. Choose a module to add. The WSO2 Carbon provides the following modules, which you can engage into your service group:
- WSO2xfer-3.20 - Is an implementation of
WS-Transfer
. - WSO2mex-3.20 - Provides
MetadataExchange
services for any services that the module is engaged. - rampart-1.61-wso2v1 - Provides the
WS-Security
andWS-SecureConversation
functionalities for Axis2, based onApache WSS4J
,Apache XML-Security
andApache Rahas
implementations. - sandesha1-3.20
- rahas-1.61-wso2v1 - Is used to STS enable a service, where it adds the
RequestSecurityToken
operation to a service that the module is engaged to. - relay-3.20 - Unwraps the binary messages coming from the Message Relay for Admin Services.
3. Click on the "Engage" button to add a module to the list.
See more information about modules in Modules.
Creating the Archive File
Click "Create Service Archive" on the "Service Group Dashboard" page for your service, and it will create the service archive file. You will be prompted to save the file somewhere else in your machine.