Skip Headers

# Client

Previous

Next

In a three-tier application architecture, you can implement any of the following types of client:

- Web client–Oracle recommends that you implement a Web client.

- XML/Web service client–With this client type, you can use TopLink XML (see "XML Usage").

- Java (fat) client–With this client type, you can choose the means of communicating with the server:

  - EJB session beans–Oracle recommends this approach. You may consider using the `UnitOfWork` method `mergeClone` to handle merging deserialized objects (see "Merging Changes in Working Copy Clones"). The disadvantage of this approach is that your application must handle serialization. Avoid serializing deep object graphs. You should use indirection (see "Configuring Indirection"). Consider using the data-transfer-object pattern.

  - XML/Web service–Use TopLink XML (see "XML Usage").

  - EJB entity bean–Use TopLink CMP integration or BMP support. The disadvantage of this approach is that remote entity beans may not perform or scale well.

  - RMI–You may consider using a TopLink remote session (see "Remote Sessions"). The disadvantage of this approach is that a remote session is stateful and may not scale well.

See also "Service Layer".