Red Hat Training

A Red Hat training course is available for JBoss Enterprise SOA Platform

Chapter 19. Publishing Contracts

19.1. Service List Application

Important

Red Hat is offering the service list functionality as a Technical Preview only at this point in time. It will be replaced by different technology in a later release.
The Service List Application is a tool that allows the user to see information about end-points. (You will often need this information if you are utilizing web service end-points exposed by the SOAPProcessor action). The tool is at http://localhost:8080/contract/. The tool groups end-points under the services with which they are associated.

19.2. End-Point Contract

An end-point contract specifies what an end-point will communicate to other services.

19.3. How the JBoss Enterprise SOA Platform Discovers End-Point Contracts

The JBoss Enterprise SOA Platform discovers end-point contracts via looking in the action pipeline for the first action that can publish contract information.
If none of the actions can do so, then the Service List Application displays this message:
Unavailable on Contract

19.4. Publish a Contract

Procedure 19.1. Task

  1. In order to publish contract information, you must give an action the following org.jboss.internal.soa.esb.publish.Publish annotation. (This example uses the SOAPProcessor for demonstrative purposes):
    @Publish(JBossWSWebserviceContractPublisher.class)
    public class SOAPProcessor extends AbstractActionPipelineProcessor {
    //TODO: implement
    }
    
  2. Implement the org.jboss.soa.esb.actions.soap.ContractPublisher interface (You only need to implement one method):
    public ContractInfo getContractInfo(EPR epr);