Jump to: navigation, search

EclipseLink/FAQ/DBWS

< EclipseLink‎ | FAQ
Revision as of 11:14, 21 August 2008 by Michael.norman.oracle.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

EclipseLink Database Web Services (DBWS)

Description

The goal of DBWS is to enable simple and efficient access to relational database artifacts via a Web Service. DBWS extends EclipseLink's core capabilities while leveraging existing components (ORM, MOXy).

EclipseLink DBWS has two parts: a design-time tooling component and a runtime provider component that takes a service descriptor (along with related deployment artifacts) and realizes it as a JAX-WS 2.0 Web Service. The runtime provider uses EclipseLink to bridge between the database and the XML SOAP Messages used by a Web Service client.

An DBWS service may be comprised of any number of operations of which there are 4 types:

  1. Insert - inserts into the database persistent entities described by an XML document.
  2. Update - updates database persistent entities described by an XML document.
  3. Delete - removes from the database persistent entities described by an XML document.
  4. Query - retrieves from the database persistent entities described by an XML document.
    Selection criteria for Query operations can be specified by:
    • custom SQL
    • Stored Procedures
    • TopLink Expressions
    • JP-QL

The XML documents used by operations conform to an XML Schema Definition .xsd document auto-generated by the design-time tooling. Alternatively, if no .xsd is available, a pre-defined simple XML format (SXF) can be used.

Who uses this feature?

Anyone who wishes to expose a database artifact as a Web Service.

Why do they use it?

EclipseLink DBWS provides a simple light-weight metadata model that requires no Java programming, yet is highly extensible.

h4. What technologies apply?

EclipseLink OR/OXM, JAX-WS