Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/FAQ/DBWS
Contents
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, OXM).
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:
- Insert - inserts into the database persistent entities described by an XML document.
- Update - updates database persistent entities described by an XML document.
- Delete - removes from the database persistent entities described by an XML document.
- 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.
Design Documentation
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.
What technologies apply?
EclipseLink ORM, OXM, XRM, JAX-WS
Using DBWS requires JDK 1.6 (or higher).