The Service Component Architecture (SCA) implementation
complies with Service Data Objects (SDO) 2.1.1 (JSR 235). You can
use SDO 2.1.1 in your SCA applications.
Before you begin
Install the product and enable SDO. Instructions on enabling
the SDO feature are in the installation topics for your operating
system.
Read SDO data
binding for SCA applications to better understand how to work
with SDO in SCA Java clients and implementations. For more information,
read about using business exceptions with SCA interfaces.
Consider
installing a Rational Application Developer product with SCA Development
Tools that you can use to assemble service-oriented application components
based on open SCA specifications. See the Rational Application Developer
documentation.
About this task
To use SDO 2.1.1 in an SCA application, access the default
HelperContext programmatically in a Java or
Java Platform, Enterprise Edition (Java EE) component implementation
type and then develop one or more SCA composites that use SDO following
a bottom-up or top-down approach.
Procedure
- Develop one or more SCA components that use SDO.
- Decide whether you are going to use a top-down or bottom-up
approach to developing your SCA component implementations.
The
section on top-down and bottom-up development in
SDO data binding for SCA applications describes
the approaches. The top-down approach is typically preferred in SCA
service architecture and development. When you start with a composite
definition file that uses
<interface.wsdl>:
- The top-down approach is strongly typed.
- The top-down approach has an implied schema, anyType,
that does not need to be generated.
- The bottom-up approach has more flexibility than the top-down
approach.
Java.lang.object is a restriction.
- Use a top-down approach (starting from WSDL and XSD
files) or a bottom-up approach (starting from Java files) to develop
SCA composites that use SDO.
- Access
the default HelperContext programmatically.
You
can access the default HelperContext programmatically in a Java or
Java EE component implementation type. You cannot access the default
HelperContext programmatically in a Spring component implementation
type.
Restriction: You cannot use array types for Java
parameters. You cannot map from schema elements declared with the
attribute, maxOccurs="unbounded" to array types.
Instead, map the element to a List, such as a List<DataObject> or List<String>.
Restriction: ![[Updated in July 2012]](../../delta.gif)
For the bottom-up approach, you
cannot use Java collection types for either Java parameters or return
types. The DataObject itself can serve as a container. For example,
instead of
List<DataObject> personsList where
the contained DataObject instances are each a person, pass DataObject
persons where the children of the root element are each a person.
![[Updated in July 2012]](../../deltaend.gif)
jul2012
- If you are using a top-down development approach, package
your WSDL and XSD files in an SCA contribution.
Packaging
WSDL and XSD files in an appropriate contribution enables your component
to access the schema definitions. The section on schema registration
in SDO data binding for SCA
applications describes the registration.
Consider packaging
your WSDL and XSD files so that they can be accessed across various
parts of your application from a shared in-memory instance. For details,
see Implementing
shared scopes in SCA applications that use SDO.
- Deploy your SCA composites that use SDO in an SCA business-level
application.
See topics on SCA contributions and shared
scopes for information on how to establish a shared SDO scope. Otherwise,
there are no special deployment considerations for applications using
the SDO data binding.
Results
You have developed and deployed an SCA composite that uses
SDO in a business-level application.
What to do next
Test the deployed SCA composites.