An interpreted data source is a tabular data source that is regarded by SOAtest as a relational repre-sentation of a Java object graph. An interpreted data source can be used to facilitate creation of multiple Java objects and object graphs that can be used as test parameter inputs by the EJB Client Tool and other SOAtest tools. For more information on the EJB Client tool, see EJB Client.
To generate a Data Source from the fields of a Java Bean:
The following are the main concepts of the relational to object mapping used by SOAtest:
The first column in each table is an identifier for object instances. An object may be referenced by the table name followed by a space, followed by the object identifier. Identifier column need not necessarily be row numbers, so long as the identifier values are unique within each table.
Field values of non-primitive classes are generally specified through object references as described above. However, the extra level of indirection is unnecessary and cumbersome for values of primitive types. To accommodate an abbreviated form, a built-in support is included for inlining commonly used types with well-defined string representations. An empty cell in a reference column is interpreted as the null value. An empty cell for a value column is interpreted as an empty string.
In order to support variable sized collections, a collection table is introduced. A collection table has a single reference column. An object in the collection is referenced by the table name followed by a space, followed by the object identifier.
As an example, let us consider an object graph with
CreditCardDO as a root.
CreditCardDO contains instances of
AddressDO and a
Vector of ActivityDO type objects.
The following tables illustrate how the above object graph example can be represented in tabular format:
|1||SampleBank||AddressDO 1||PersonDO 1|
|1||Los Angeles||CA||101 E. Huntington Dr.||91016|