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/DesignDocs/390352
< EclipseLink | DesignDocs
Revision as of 10:09, 3 October 2012 by Unnamed Poltroon (Talk) (New page: <div style="margin:5px;float:right;border:1px solid #000000;padding:5px">__TOC__</div> = Design Specification: Remote JPA = [http://bugs.eclipse.org/390352 ER 390352] [[Talk:EclipseLink/...)
Design Specification: Remote JPA
Document History
Date | Author | Version Description & Notes |
---|---|---|
2012-10-03 | James | 0.1 Draft |
Project overview
Remote JPA would allow access to the JPA API from a remote Java client. This would allow fat Java clients to access the richness of the JPA API, and not require a data transfer layer. This can avoid the need for remote SessionBeans, merging, and data transfer objects. It provides querying, transactions, change tracking, and lazy relationship support on the Java client.
It could also be used in distributed architectures to perform database intensive work closer to the database, for more optimal interaction.
Concepts
- fat-client -
- RMI -
Requirements
- JPA API
- query execution
- transaction/unit of work
- change tracking, flushing
- lazy relationships
- load groups, eager relationships
Design Constraints
- security
- communication protocol
- serialization
Functionality
Leverages existing Remote Session functionality.
Testing
JPA EntityManager suite.
API
Native API
Config files
Documentation
Should be documented under a new Remote JPA section.
Open Issues
Issue # | Owner | Description / Notes |
---|---|---|
1 | Can unit of work commit only send changes, instead of objects? | Currently sends both, commit currently requires objects. |
2 | What communication protocols should be supported? | Currently RMI, maybe CORBA. |
Decisions
Issue | Description / Notes | Decision |
---|