Predefined Constants
The structure of a Service Component
SCA
PHP Manual

# Examples

Table of Contents

- The structure of a Service Component
- Obtaining a proxy for another Service Component
- Calling another Service Component
- Locating and calling services from a script which is not an SCA Component
- Exposing a Service Component as a Web service
- Deploying an SCA component
- Obtaining the WSDL for an SCA component offering a Service as a Web service
- Understanding how the WSDL is generated
- Working with Data Structures
- Error handling

The examples in the subsequent sections illustrate the following aspects of PHP for SCA:

- How PHP annotations are used to define PHP classes as SCA components, and how annotations are used to define the services.

- How an SCA component can be exposed as a Web service

- How an SCA component can consume a Web service, whether provided by another SCA component or by some other service which knows nothing of SCA

- How an SCA component can call another SCA component locally (within the same process and on the same call stack)

- How a client script which is not an SCA component can use the getService call to obtain a proxy for an SCA component.

- How data structures such as Addresses, or Puchase Orders, are represented as Service Data Objects, and handled.

- How SCA components are deployed, and in particular how and when WSDL is generated for a service.

- How parameters are always passed by value (and not by reference) between components, even when the calls are local. This ensures that the semantics of a call do not change depending on the location of a component.

- How positional parameters to a service are supported, even when the underlying WSDL is document literal wrapped, and naturally supports only named parameters.

- How business and runtime exceptions are handled.