Maynstall Database WebServices

Introduction

Within Maynstall, there is a layer of database services which allow a JPA-style data model to be exposed via REST-style web services. These services provide a consistent client-side representation of the POJOs including the ability to modify objects on the client and then persist a transaction of changes to the server. The services also include the following:

Background loading of related objects upon reference to those objects

Blocking and non-blocking with events mode of loading data not yet available on the client

Meta information to inspect pending changes on the client side

Usage of JPA annotations to support understanding inter-object relationships

Registration of model providers allowing mixing of objects from remote WS-based services as well as local JPA DB connections

Triggers for loading a large portion of the model in a single request for optimization

Procedures that can be registered via extension point to allow complex Java implementations of queries on the server

Getting Started

To get started with the Maynstall database layer for remote objects, use the attached project set on this Wiki page. It provides you with the right set of projects that you need to work with the services. Note you will also need to EclipseLink or another JPA provider in your workspace / Eclipse install to allow the Maynstall code to resolve the various dependencies.