JBoss.orgCommunity Documentation

Chapter 4. UDDI Integration

4.1. Overview
4.2. UDDI config properties
4.3. Default configurations
4.4. Other UDDI v3 Registries
4.5. UDDI Registry Entities and UDDI Seed Data

The integration of a UDDI client into the RiftSaw runtime codebase allows for the auto-registration of BPEL services to an UDDI registry upon deployment of the service. The registration process uses the jUDDI-3 client libraries which are capable of communicating to any UDDI v3 complaint registry.

Upon deployment both the Service and its BindingTemplate (EndPoint information) are registered, upon undeployment the BindingTemplate is removed.

By default RiftSaw uses the jUDDI client libraries of JBossESB/SOA-P, and the client configuration is found in the deploy/jbossesb.saw/esb.juddi.client.xml. Both the name of the ClerkManager and the Clerk itself are specified in the bpel.properties file.

The UDDI properties in the bpel.properties file are:

When RiftSaw is deployed to a JBossAS-5.1.0, jUDDI v3 is not installed, and therefor the UDDI integration is turned off (bpel.uddi.registration=false).

When RiftSaw is deployed to JBossAS-5.1.0 + JBossESB-4.7, the UDDI integration is turned on. By default we use the jUDDI client library which ships with the JBossESB, which is configured in the jbossesb.sar/esb.uddi.client.xml, with manager name 'test-manager'. The bpel.uddi.client.impl is set to org.jboss.soa.bpel.uddi300.UDDI300RegistrationImpl.

When RiftSaw is deployed to SOA-P-5.0.0 (or JBossESB > 4.7) UDDI integration is turned on and the bpel.uddi.client.impl is set to org.jboss.soa.bpel.uddi.UDDIRegistrationImpl. Again the jbossesb.sar/esb.uddi.client.xml is used, with manager name 'esb.registry'.

Other UDDI v3 complaint registries can be used, however the UDDIv3 spec only requires communication using the UDDI WebServices. To set up SOAP based communication specify the JAXWS-Transport. At this point it makes sense to no longer use the the esb.uddi.client.xml, but rather use your own bpel.uddi.client.xml. For more details please see the jUDDI v3 documentain.

In the esb.uddi.client.xml a few properties are defined that are used by the Clerk at registration time. These settings of these values can be customized, however they must correspond to the UDDI seed data specified for the jbossesb publisher, in the jbossesb-registry.sar/juddi_custom_install_data. So you will need to change it there as well.

The clerk is configured to use the jbossesb publisher and the keyDomain is set to "esb.jboss.org".

The businessKey is set to "redhat-jboss".

The serviceDescription is set to "BPEL Service deployed by Riftsaw".

The bindingDescription is set to "BPEL Endpoint deployed by Riftsaw".

Note that in SOA-P-5 the jbossesb-registry.sar/esb.uddi.xml contains a property juddi.seed.always which is set to "true". This means that that it is always trying to load the root seed data on startup of the server. It is recommended to turn this value to "false" once you are content with the UDDI Seed Data.