Thanks Michael,
I figured that last night after some digging around :-)
BTW, when I tried switching the 'openjpa.MetaDataFactory' to 'jdo' in
'openjpa.xml' properties, I got a ClassNotFoundException for 'jdo'. I
think the docs online say that 'jdo' is default meta data factory:
http://people.apache.org/~mprudhom/openjpa/site/openjpa-project/manual/ref_guide_conf_openjpa.html#openjpa.MetaDataFactory
But here it mentions only 'jpa' as the recognized built-in metadata
factory:
http://people.apache.org/~mprudhom/openjpa/site/openjpa-project/manual/ref_guide_meta.html#ref_guide_meta_factory
Which is definitive? I have a .jdo mappings files that I'd like to
process.
Cheers,
Rahul
----- Original Message -----
From: "Michael Dick" <[EMAIL PROTECTED]>
To: <open-jpa-dev@incubator.apache.org>
Sent: Tuesday, January 09, 2007 4:35 AM
Subject: Re: Missing ProductDerivation resource error
Hi Rahul,
The problem here is that the enhancer can't find persistence.xml in
the
classpath. If you have persistence.xml defined in
E:\continuum-key-based-refactor\continuum-model\target\classes\META-INF,
it should be picked up.
Alternatively you can pass in the location of persistence.xml in with
the -p
[path to persistence.xml] arguments. I think that just having
persistence.xml on the classpath would be easier and cleaner though,
but
I've never looked into writing maven plugins..
On 1/7/07, Rahul Thakur < [EMAIL PROTECTED]> wrote:
Thanks Michael,
That helped a bit! What required config properties do I need to set?
I
had the following set up in plugin config in the pom.xml.
[snip]
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>openjpa-maven-plugin</artifactId>
<version>0.0.1-SNAPSHOT</version>
<configuration>
<toolProperties>
<property>
<name>addDefaultConstructor</name>
<value>false</value>
</property>
<property>
<name>enforcePropertyRestrictions</name>
<value>true</value>
</property>
</toolProperties>
</configuration>
</plugin>
[/snip]
And this is what I see in the logs. Appreciate the help.
[snip]
[DEBUG] -- end configuration --
[INFO] [openjpa:enhance]
[INFO] running OpenJPA Enhancer Mojo...
[DEBUG] Classes Dir is :
E:\continuum-key-based-refactor\continuum-model\target\classes
[DEBUG] Executing command line:
[DEBUG] java -cp
E:\continuum-key-based-refactor\continuum-model\target\classes;e:\repository\classworlds\classworlds\1.1\classworlds-
1.1.jar;e:\repository\org\codehaus\plexus\plexus-container-default\1.0-alpha-10\plexus-
container-default-1.0-alpha-10.jar
;e:\repository\net\java\dev\stax-utils\stax-utils\20060502\stax-uti
ls-20060502.jar;e:\repository\stax\stax-api\1.0.1\stax-api-1.0.1.jar;e:\repository\org\codehaus\plexus\plexus-utils\1.2\plexus-
utils-1.2.jar;E:\repository\org\ap
ache\openjpa\openjpa-jdbc-5\0.9.7-incubating-SNAPSHOT\openjpa-
jdbc-5-0.9.7-incubating-SNAPSHOT.jar
;E:\repository\org\apache\openjpa\openjpa-jdbc\0.9.7-incubating-SNAPSHOT\openjpa-
jdbc-0.9.7-incubating-SNAPSHOT.jar ;E:\repository\ant\ant\1.6.5\ant-
1.6.5.jar;E:\repository\commons-logging\commons-logging\1.0.4\commons-
logging-1.0.4.jar
;E:\repository\org\apache\geronimo\specs\geronimo-jms_1.1_spec\1.0.1\geronimo-jms_1.1_spec-
1.0.1.jar;E:\repository\commons-lang\commons-lang\2.1\commons-
lang-2.1.jar
;E:\repository\org\apache\openjpa\openjpa-kernel\0.9.7-incubating-SNAPSHOT\openjpa-
kernel-0.9.7-incubating-SNAPSHOT.jar
;E:\repository\log4j\log4j\1.2.13\log4j-1.2.13.jar;E:\repository\org\apache\openjpa\openjpa-all\0.9.7-incubating-SNAPSHOT\openjpa-
all-0.9.7-incubating-SNAPSHOT.jar
;E:\repository\net\sourceforge\serp\serp\1.11.0\serp-1.11.0.jar
;E:\repository\org\apache\geronimo\specs\geronimo-jta_1.0.1B_spec\1.0.1\geronimo-jta_1.0.1B_spec-
1.0.1.jar;E:\repository\commons-collections\common
s-collections\3.2\commons-collections-3.2.jar
;E:\repository\org\apache\openjpa\openjpa-lib\0.9.7-incubating-SNAPSHOT\openjpa-
lib-0.9.7-incubating-SNAPSHOT.jar;E:\repository\org\apache\openjpa\openjpa-persistence\0.9.7-incubating-SNAPSHOT\openjpa-
persistence-0.9.7-incubating-SNAPSHOT.jar
;E:\repository\javax\persistence\persistence-api\1.0\persistence-
api-1.0.jar
;E:\repository\org\apache\openjpa\openjpa-persistence-jdbc\0.9.7-incubating-SNAPSHOT\openjpa-
persistence-jdbc-0.9.7-incubating-SNAPSHOT.jar;E:\repository\org\apache\openjpa\openjpa-xmlstore\0.9.7-incubating-SNAPSHOT\openjpa-
xmlstore-0.9.7-incubating-SNAPSHOT.jar;E:\repository\org\apache\geronimo\specs\geronimo-j2ee-connector_1.5_spec\1.0.1\geronimo-j2ee-connector_1.5_spec-
1.0.1.jar;E:\repository\commons-pool\commons-pool\1.3\commons-pool-1.3.jar
;E:\repository\org\apache\openjpa\openjpa-kernel-5\0.9.7-incubating-SNAPSHOT\openjpa-
kernel-5-0.9.7-incubating-SNAPSHOT.jar;E:\repository\hsqldb\hsqldb\1.8.0.1\hsqldb-
1.8.0.1.ja
r;D:\rnd\apps\maven-2.0.4\core\plexus-container-default-1.0-alpha-9.jar
;D:\rnd\apps\maven-2.0.4\lib\maven-artifact-2.0.4.jar;D:\rnd\apps\maven-
2.0.4\lib\maven-plugin-api-2.0.4.jar;D:\rnd\apps\maven-
2.0.4\core\plexus-utils-1.1.jar
org.apache.openjpa.enhance.PCEnhancer -addDefaultConstructor
false -enforcePropertyRestrictions true
E:\continuum-key-based-refactor\continuum-model\target\classes\META-INF\package.jdo
[DEBUG] Exit code: 1
[DEBUG] --------------------
[DEBUG] Standard output from the Open JPA Enhancer tool:
[DEBUG] --------------------
[INFO]
[DEBUG] --------------------
[ERROR] --------------------
[ERROR] Standard error from the OpenJPA Enhancer tool:
[ERROR] --------------------
[ERROR] Exception in thread "main" <4|true|0.9.7-incubating-SNAPSHOT>
org.apache.openjpa.util.MetaDataException: MetaDataFactory could not
be
configured ( conf.ne
wMetaDataFactoryInstance() returned null). This might mean that no
configuration properties were found. If you are using Ant, please see
the <properties> or <pro
pertiesFile> attributes of the task's nested <config> element. This
can
also occur if your OpenJPA distribution jars are corrupt, or if your
security policy is o
verly strict.
at
org.apache.openjpa.meta.MetaDataRepository.initializeMetaDataFactory(
MetaDataRepository.java :1470)
at
org.apache.openjpa.meta.MetaDataRepository.endConfiguration(
MetaDataRepository.java:1463)
at
org.apache.openjpa.lib.conf.Configurations.configureInstance(
Configurations.java:422)
at
org.apache.openjpa.lib.conf.Configurations.configureInstance(
Configurations.java:347)
at
org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:99)
at
org.apache.openjpa.lib.conf.ObjectValue.instantiate
(ObjectValue.java:70)
at
org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstance
(OpenJPAConfigurationImpl.java:831)
at
org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java :3652)
at
org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:3635)
at
org.apache.openjpa.enhance.PCEnhancer.main(PCEnhancer.java:3607)
[ERROR] --------------------
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] The OpenJPA Enhancer tool exited with a non-null exit code.
[INFO]
------------------------------------------------------------------------
[DEBUG] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: The OpenJPA
Enhancer tool exited with a non-null exit code.
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals (
DefaultLifecycleExecutor.java:559)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(
DefaultLifecycleExecutor.java:488)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal (
DefaultLifecycleExecutor.java:458)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures
(DefaultLifecycleExecutor.java:306)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments
(
DefaultLifecycleExecutor.java:273)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(
DefaultLifecycleExecutor.java:140)
at
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java :322)
at
org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:256)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java
:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke (Method.java:585)
at
org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at
org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at
org.codehaus.classworlds.Launcher.mainWithExitCode
(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.MojoExecutionException: The
OpenJPA
Enhancer tool exited with a non-null exit code.
at
org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.enhance(
OpenJpaEnhancerMojo.java:194)
at
org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.execute(
OpenJpaEnhancerMojo.java:88)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo (
DefaultPluginManager.java:412)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(
DefaultLifecycleExecutor.java:534)
... 16 more
[/snip]
----- Original Message -----
From: "Michael Dick" <[EMAIL PROTECTED]>
To: <open-jpa-dev@incubator.apache.org>
Sent: Monday, January 08, 2007 5:39 AM
Subject: Re: Missing ProductDerivation resource error
> Hi Rahul,
>
> It looks like the plugin is only adding the openjpa-kernel and
> openjpa-lib
> jars to the classpath. Can you configure the plugin to use
> openjpa-all? The
> the product derivations are aggregated in the openjpa-all jar file
> which
> should resolve the missing resource problem.
>
>
--
-Michael Dick