enunciate

articulate your web api.

Modules

The work of Enunciate is divided into modules. Modules can be thought of as loosly coupled, non-interdependant extensions to the Enunciate engine. Each module has a specific set of work to perform. For example, the XML module generates the WSDL and schemas for the API, the REST module validates the REST endpoints, the xfire-client module generates the xfire client libraries, etc. Since each module has a specific set of work to do, each module has also a separate set of configuration options.

The modules that are to be included in the Enunciate mechanism are discovered at runtime using Sun's discovery mechanism.

Enunciate ships with a default set of modules:

  • docs

    Generates the API documentation.

  • jaxws

    Generates the JAX-WS request/response/fault wrappers according to the JAX-WS specification

  • rest

    Validates the REST API and provides support for hosting it.

  • xfire

    Generates support classes for deploying SOAP endpoints (using XFire).

  • spring-app

    Builds and packages the war that will host the documentation and service the endpoints (via Spring).

  • xfire-client

    Builds the Java client libraries used to access the API (using XFire)

  • gwt

    Builds the GWT client libraries used to access the API via GWT-RPC. It also compiles the configured GWT applications.

  • amf

    Builds the AMF endpoints (and ActionScript client libraries for Flex developers) used to access the API via AMF. It also compiles the configured Flex applications.

  • xml

    Generates the WSDL and schemas for the API.

  • integration tests

    Support for testing your deployed Web services.

For more information about modules (including how to write your own), see the architecture guide.