cornercorner
FeaturesPluginsDocs & SupportCommunityPartners

JaxWsClientAPI

Contents


Purpose of the JAX-WS Client SPI/API

  • provide SPI for JAX-WS Client implementation in various project types
  • provide API for accessing JAX-WS Clients in project

Who will use JAX-WS Client SPI/API

  • Project types that want to support the creation of SOAP service references (based on reference to a WSDL file), and expose those service references in logical view (JAX-WS Client SPI)
  • Netbeans modules that want to add, remove and consume web service references (JAX-WS Client API)

Architecture

JAX-WS Client SPI/API consists of SPI and API part.

JAX-WS Client SPI

The role of SPI implementation is to integrate JAX-WS Service References (Clients) to particular project type. SPI part consists of 4 interfaces :

  • JAXWSClientSupportImpl - provides methods that implement JAX-WS client creation and removal as well as information where JAX-WS java and xml artifacts are located in project
  • JAXWSClientSupportProvider - provides method to obtain JAXWSClientSupport for particular FileObject
  • JAXWSClientViewImpl - provides method to create JAX-WS References root node in project
  • JAXWSClientViewProvider - provides method to obtain JAXWSClientView for particular FileObject

To simplify the implementation process, SPI contains some useful final and abstract classes, e.g. :

  • JAXWSClientSupportFactory - used to obtain JAXWSClientSupport from JaxWSClientSupportImpl
  • JAXWSClientViewFactory - used to obtain JAXWSClientView from JAXWSClientViewImpl
  • ProjectJAXWSClientSupport - default abstract class, implementation of JAXWSClientSupportImpl

The implementator responsibility is to put JAXWSClientSupportProvider and JAXWSClientViewProvider instances to project lookup either in project type module or in separate module to force the project/WS infrastructure to expose web service references.

JAX-WS Client API

The role of JAX-WS Client API is to provide an entry point to JAX-WS service references (clients) in a project.
The API is used by a client module to :

  • add web service reference (client) to project
  • delete web service reference (client) from project
  • search for web service references (clients) in a project
  • search for web service references for given file object (servlet, web service class, session bean etc.)

API consists of these (final) classes :

  • JAXWSClientSupport - enables to get JAXWSClientSupport instance for particular project,
    then add, remove or introspect JAX-WS service references (clients) in project
  • JAXWSClientView - returns the WS References root node for a project