Hi Marco,

there is not much to see yet, apart from some test cases (which, of course, fail). My first goal is to 'dynamically' register entity classes at the EntityManagerFactory without relying on persistence.xml or the like and without bytecode enhancement.
The attached (non-RCP) example is all I want to see running for now.
Dealing with the class-loading issues will probably be the next step;)

Cheers,
Rüdiger



Marco Schwarz wrote:
I work on a RCP using openJPA and Derby. It works fine.
Kann I see your RCP (and Plugin) Source?

Bye
Marco

----- Original Message -----
Da : Rüdiger Herrmann <[EMAIL PROTECTED]>
A : [email protected]
Oggetto : JPA: adding entities to EntityManagerFactory
programmatically
Data : Tue, 27 May 2008 23:49:16 +0200

Hi,

using OpenJPA in a JavaSE (Eclipse RCP) environment, I
would like to  register JPA-annotated classes that will
participate in the  persistence mechanism at runtime.

Background:
Presistence-aware classes are contributed via Eclipse
Extension  Points. All these classes have JPA annotations.

Furthermore I don't want to use class enhancement as I
don't have  control over the VM startup parameters (like
-javaagent) in which  the application is running in.
Though there seems to be an effort to make class
enhancement  optional ([1]), I couldn't find further
information on how to  disable class enhancement.

I played around with the attached code (persist one
instance of  class Person that has no further
dependencies/references) but I  couldn't get it to work.

The various attempts resulted either in
   Attempt to cast instance "...Person..." to
   PersistenceCapable failed.  Ensure that it
   has been enhanced.
or
   The type "class org.example.openjpatest.Person"
   has not been enhanced.
depending on wether I called
MetaDataRepository#addMetaData() or MetaDataRepository#addPersistenceAware() (no idea what the
difference is) and wether I called mernge() before
persist().

If desired I can send the full (Eclipse) project with all
required  jars (HSQL, OpenJPA plus dependencies, JTA) that
runs out-of-the-box.


Thanks in advance
Rüdiger

[1] https://issues.apache.org/jira/browse/OPENJPA-293



[Allegato : NoEnhancerExample.java]
[Allegato : Person.java]

....

Reply via email to