We need to coordinate this effort with Geronimo and OpenJPA.

Geronimo already has an initial set of the required API updates in the geronimo-jpa_2.0_spec [1] to support RFC 143.

OpenJPA has had several people approach the community about supporting RFC 143. We need to keep in mind, that most of this extender code will eventually live in OpenJPA (or a copy of it), as OpenJPA needs to be enabled for OSGi out-of-the-box just as Eclipselink is today and not dependent on Aries for that enablement. Also, in true open source fashion, we should make sure Aries is JPA provider neutral and works with Ecliseplink and other providers.

[1] https://svn.apache.org/repos/asf/geronimo/specs/trunk/geronimo-jpa_2.0_spec

[2] https://svn.apache.org/repos/asf/openjpa/trunk/openjpa-osgi/


-Donald


Timothy Ward wrote:
RFC 143 is really an internal requirements document from the OSGi enterprise 
expert group. The latest version of the Persistence Unit Service draft 
specification is available in the early draft of the 4.2 enterprise release.

http://www.osgi.org/download/osgi-4.2-enterprise-early-draft4.pdf

There have been (and continue to be) a number of changes in this area, 
including the part of the extender that is responsible for registering 
providers. I don't want to stop anyone from getting started on JPA, I just want 
to make sure that we focus our efforts on things that aren't throw-away.

I think working on Aries 79, combining the Meta-Persistence header into the 
persistence.xml search could be a good place to start.

Regards,

Tim

Date: Thu, 10 Dec 2009 11:17:20 +0000
Subject: Re: [jira] Commented: (ARIES-77) Implement extender for detecting      
provider bundles and registering provider service.
From: [email protected]
To: [email protected]

Hi Timothy

I got latest rfc-0143. Hopefully is the latest :).
Have a look at summary of responsibilities:

Extender Responsibilities

   1.

   Detect Provider bundles
   2.

   Register providers as services using the provider name and version
   service properties
   3.

   Detect persistence unit bundles based on the presence of persistence.xml
   4.

   Read all of the persistence unit metadata from the persistence.xml file
   5.

   Associate a provider with each persistence unit (using the name and
   version resolving)
   6.

   Add exports from associated provider to persistence unit bundle imports
   7.

   Create PersistenceUnitInfoService from persistence unit metadata and
   additional context info
   8.

   Register persistence units as services with persistence unit name and
   version as service properties

Provider Responsibilities

   1.

   When createEntityManagerFactory() is invoked, look up the
   PersistenceUnitInfoService for the named persistence unit and see if the
   provider is set to the calling provider
   2.

   Use the information from the PersistenceUnitInfoService to access the
   classes and resources to create an EntityManagerFactory
   3.

   Use the JDBC service to access the driver (or JTA data source in a
   container) and obtain a data source from which it can obtain connections.

Cheers,
Adam

On Thu, Dec 10, 2009 at 11:08 AM, Timothy Ward <[email protected]>wrote:

Hi,

I'm afraid I can't comment on JIRAs yet, because my id hasn't come through,
but I wanted to warn you that the public draft of the OSGi Persistence Unit
Service doesn't do this.

At one point it seemed like this might be a nice idea, but the current
draft (which is still changing), doesn't require an extender to detect and
register providers. In fact, it expects providers to register themselves so
I'm not sure that this is a valuable feature to move across from the
contribution.


Tim


Date: Wed, 9 Dec 2009 20:26:18 +0000
From: [email protected]
To: [email protected]
Subject: [jira] Commented: (ARIES-77) Implement extender for detecting
provider bundles and registering provider service.
 >
    [
https://issues.apache.org/jira/browse/ARIES-77?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12788292#action_12788292]
Lin Sun commented on ARIES-77:
------------------------------

FYI - the IBM initial contributed code has this function (in
persistenceprovidermanager.java).


Implement extender for detecting provider bundles and registering
provider service.
-----------------------------------------------------------------------------------
                Key: ARIES-77
                URL: https://issues.apache.org/jira/browse/ARIES-77
            Project: Aries
         Issue Type: New Feature
         Components: JPA
   Affects Versions: Incubation
           Reporter: Adam Wojtuniak
           Assignee: Adam Wojtuniak

1.Detect Provider bundles
2.Register providers as services using the provider name and version
service properties
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

_________________________________________________________________
View your other email accounts from your Hotmail inbox. Add them now.
http://clk.atdmt.com/UKM/go/186394592/direct/01/

_________________________________________________________________
Have more than one Hotmail account? Link them together to easily access both
 http://clk.atdmt.com/UKM/go/186394591/direct/01/

Reply via email to