Return-Path: Delivered-To: apmail-openjpa-dev-archive@www.apache.org Received: (qmail 67929 invoked from network); 1 Feb 2011 22:26:16 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 1 Feb 2011 22:26:16 -0000 Received: (qmail 21961 invoked by uid 500); 1 Feb 2011 22:26:16 -0000 Delivered-To: apmail-openjpa-dev-archive@openjpa.apache.org Received: (qmail 21855 invoked by uid 500); 1 Feb 2011 22:26:15 -0000 Mailing-List: contact dev-help@openjpa.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openjpa.apache.org Delivered-To: mailing list dev@openjpa.apache.org Received: (qmail 21847 invoked by uid 99); 1 Feb 2011 22:26:15 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Feb 2011 22:26:15 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of umashanthip@gmail.com designates 209.85.218.46 as permitted sender) Received: from [209.85.218.46] (HELO mail-yi0-f46.google.com) (209.85.218.46) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Feb 2011 22:26:06 +0000 Received: by yib18 with SMTP id 18so2955368yib.33 for ; Tue, 01 Feb 2011 14:25:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=7bdsK4AyUQBNYtXjLOuR5MSAUQD+wIJ/8MArDmGaBf0=; b=S51m51Qiqjd0ZTh/bB2LC/YGMUM/KSifXFRu8p7UXzKft3pjZMua+GSCA0qCBgrKkf SEYosnP2hnBgotsCzWn4hULqxsvHVZIpREWijqBHdxGmRJZalfzsaZ/9WDgB8p203eKq TzqKLVpr/b71I5Jpjs2AyrU54tXC/5MraXuV8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=N21lfpl6nq5AAjtFP1SWX5HU+8NZZt8EUZj+/lcPD4M8FIJL50PL+pP2wNqNYCsh+s X7SElObvWl6SnKW2gbEeczezd0U1TLrr4hqGO3smwpHuY/LiSgxKoLrLXTQvmgezMtTX CQjtWvJcRl7sMFQxop5wNryfaGDOUaBtmwc8E= MIME-Version: 1.0 Received: by 10.100.197.9 with SMTP id u9mr121454anf.84.1296599144592; Tue, 01 Feb 2011 14:25:44 -0800 (PST) Received: by 10.100.94.4 with HTTP; Tue, 1 Feb 2011 14:25:44 -0800 (PST) In-Reply-To: References: Date: Wed, 2 Feb 2011 03:55:44 +0530 Message-ID: Subject: Re: Ideas for Google Summer of Code 2011 From: Umashanthi Pavalanathan To: dev@openjpa.apache.org Content-Type: multipart/alternative; boundary=0016e642d4366df5fa049b4003f3 X-Virus-Checked: Checked by ClamAV on apache.org --0016e642d4366df5fa049b4003f3 Content-Type: text/plain; charset=ISO-8859-1 Hi Jeremy, On Mon, Jan 31, 2011 at 10:39 PM, Jeremy Bauer wrote: > Hi Umashanthi, > > Thanks for your interest in OpenJPA. I'm glad you were able to get the > code > and get it building. Besides reading the spec, the OpenJPA quick start > guide[1] (especially the examples) is a good place to start. > > Here is one SoC project idea... > > The JPA specification includes many annotations for the specification of > metadata and mapping information within Java classes. In addition, the > spec > provides a means to supply the same information within XML configuration > files (orm.xml). One primary benefit of XML config files is it allows > modification of the ORM information without needing to recompile the source > code. > I went through the sections on annotations of the JPA 2.0 spec ( Chapters 10,11&12) and got some understanding of the XML O/R mapping descriptors and their use. As it is mentioned, the mapping descriptor serves as both an alternative to and an overrid- ing mechanism for Java language metadata annotations. > > OpenJPA has many custom metadata and mapping annotations that can be used > to > provided functionality beyond the JPA specification. However, these > extensions are available only through annotations. There is currently no > means to specify the metadata or mapping extensions via XML. We've had > several requests for this capability, but it hasn't seen much/any activity. > Further I went through the Javadocs of OpenJPA annotations you mentioned and the JPA's XML-ORM XML scheme. I understood that the requirement is to create an XML schema for the custom annotations of OpenJPA, similar to the one provided for default annotations of JPA, mentioned in section 12.3 of the spec. Did I get it right? > > In part, this effort would include: > > 1) Understanding OpenJPA's annotatation extensions. > 2) Determining which annotations make sense to provide in XML configuration > 3) Designing a schema for the XML-based configuration file > (openjpa-orm.xml?) > 4) Creating metadata and mapping parsers for the new XML mapping file > 5) Wiring the new parsers into the existing code path. > I understood the above steps more after going through the spec & resources. Currently I'm continuing with the spec and samples. I would like to read more details about the custom annotations of OpenJPA. It'll be great if you can provide any related resources, if available. Thanks, ~Umashanthi > > I think this would make a good SoC project because: > > 1) The work is well defined and fairly self contained. > 2) It would be a good experience in adding additional capabilities to a > mature piece of software. > 3) It wouldn't require spending much/any time trying to understand OpenJPA > internals - which can be very time consuming. Instead, you'll be learning > about JPA and OpenJPA's powerful extensions - especially by learning what > the extensions do and writing jUnits to test the capability via XML > mappings. > 4) This activity can be ongoing. Not all extensions need to be immediately > available. Once the base framework is available, incomplete extensions can > be added in the future. (ie. this effort does not have to be fully > complete by the end of the SoC in order to be beneficial) > > Here are some links to the annotation extensions in JavaDoc: > > > http://openjpa.apache.org/builds/latest/docs/javadoc/org/apache/openjpa/persistence/package-summary.html- > Annotation Types Summary section > > > http://openjpa.apache.org/builds/latest/docs/javadoc/org/apache/openjpa/persistence/jdbc/package-summary.html- > Annotation Types Summary section > > If you are interested, I'd be happy to send you additional information to > help you make a better evaluation and/or get started. > > -Jeremy > > [1] http://openjpa.apache.org/quick-start.html > > On Sun, Jan 30, 2011 at 2:53 AM, Umashanthi Pavalanathan < > umashanthip@gmail.com> wrote: > > > Hi devs, > > > > I am an undergraduate student interested in contributing to OpenJPA and > > would like to know whether you have any ideas for Google Summer of Code > > 2011. > > > > I have checked out the source code and successfully built it with the > help > > of Mark. Currently I am in the process of studying the Java Persistence > API > > using the OpenJPA user guide. Any suggestions and links to resources that > > would help me understand the concepts and get started with OpenJPA? > > > > > > Thanks in advance, > > ~Umashanthi > > > --0016e642d4366df5fa049b4003f3--