Randy, Adam,

any help is welcome - especially since I'm currently on vacation ;)

The current plugin doesn't know of any special PersistenceUnit maven property. 
So the only way currently is to use the toolProperties.

LieGrue,
strub


--- Randy Watler <[email protected]> schrieb am Di, 3.3.2009:

> Von: Randy Watler <[email protected]>
> Betreff: Re: [ANN] OpenJPA Maven Plugin 1.0 Released
> An: [email protected]
> Datum: Dienstag, 3. März 2009, 14:53
> Mark,
> 
> Do you want me to dig into this a little further to help
> out here, or do you have it covered?
> 
> Let me know,
> 
> Randy
> 
> Adam Hardy wrote:
> > I am using toolProperties to specify the
> persistence.xml and persistence unit.
> > 
> > The syntax:
> > 
> > <toolProperties>
> >   <property>
> >     <name>properties</name>
> >     <value>
> >  
> ${build.testOutputDirectory}/META-INF/persistence.xml#OpenJpaTest
> >     </value>
> >   </property>
> > </toolProperties>
> > 
> > means "use the persistence-unit
> 'OpenJpaTest' in the file persistence.xml",
> where 'OpenJpaTest' is what I named the XML
> persistence-unit node in the file - and I have several in
> one persistence.xml.
> > 
> > I have seen it mentioned on the openjpa list:
> > 
> >
> http://article.gmane.org/gmane.comp.apache.openjpa.user/3499
> > 
> > where it is done like this on the command line (for
> javaagent - different, I know):
> > 
> >
> -javaagent:C:/eclipse.workspaces/3.2.2/openjpa-1.2.0/openjpa-all/target/openjpa-1.2.0.jar=pu=OpenJPAPU
> 
> > 
> > The code from svn gave this exception:
> > 
> > <openjpa-1.2.0-r422266:683325 fatal user error>
> org.apache.openjpa.util.MetaDataException: MetaDataFactory
> could not be configured (conf.newMetaDataFactoryInstance()
> returned null). This might mean that no configuration
> properties were found. Ensure that you have a
> META-INF/persistence.xml file, that it is available in your
> classpath, or that the properties file you are using for
> configuration is available. If you are using Ant, please see
> the <properties> or <propertiesFile> 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 overly strict.
> >         at
> org.apache.openjpa.meta.MetaDataRepository.initializeMetaDataFactory(MetaDataRepository.java:1567)
> 
> >         at
> org.apache.openjpa.meta.MetaDataRepository.endConfiguration(MetaDataRepository.java:1558)
> 
> >         at
> org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:505)
> 
> >         at
> org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:430)
> 
> >         at
> org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:103)
> >         at
> org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(MetaDataRepositoryValue.java:68)
> 
> >         at
> org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:83)
> >         at
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstance(OpenJPAConfigurationImpl.java:863)
> 
> >         at
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4457)
> >         at
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4439)
> >         at
> org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4409)
> >         at
> org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:708)
> 
> >         at
> org.apache.openjpa.lib.conf.Configurations.runAgainstAllAnchors(Configurations.java:693)
> 
> >         at
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4404)
> >         at
> org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.enhance(OpenJpaEnhancerMojo.java:125)
> 
> > 
> > 
> > but if I try specifying the persistence-unit name some
> other way, e.g. as a toolProperties property 'pu',
> it ignores me and throws this exception (OpenJpaTest was the
> one I was aiming for):
> > 
> > [INFO] [openjpa:enhance]
> > 203  AtomicNoDB  INFO   [main] openjpa.Tool - No
> targets were given.  Running on all classes in your
> persistent classes list, or all metadata files in classpath
> directories if you have not listed your persistent classes. 
> Use -help to display tool usage information.
> > 224  AtomicNoDB  WARN   [main] openjpa.Tool - Found no
> class to enhance.
> > 44  OpenJpaTest  INFO   [main] openjpa.Tool - No
> targets were given.  Running on all classes in your
> persistent classes list, or all metadata files in classpath
> directories if you have not listed your persistent classes. 
> Use -help to display tool usage information.
> > WARNING: Found unrecognized persistence provider
> "org.hibernate.ejb.HibernatePersistence" in place
> of OpenJPA provider.  This provider's properties will
> not be used.
> > [INFO]
> ------------------------------------------------------------------------
> > [ERROR] FATAL ERROR
> > [INFO]
> ------------------------------------------------------------------------
> > [INFO]
> /home/adam/projects/atomic/target/test-classes/META-INF/persistence.xml#HibernateTest
> 
> > [INFO]
> ------------------------------------------------------------------------
> > [INFO] Trace
> > java.util.MissingResourceException:
> /home/adam/projects/atomic/target/test-classes/META-INF/persistence.xml#HibernateTest
> 
> >         at
> org.apache.openjpa.lib.conf.ProductDerivations.load(ProductDerivations.java:309)
> 
> >         at
> org.apache.openjpa.lib.conf.Configurations.populateConfiguration(Configurations.java:337)
> 
> >         at
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4438)
> >         at
> org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4409)
> >         at
> org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:708)
> 
> >         at
> org.apache.openjpa.lib.conf.Configurations.runAgainstAllAnchors(Configurations.java:698)
> 
> >         at
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4404)
> >         at
> org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.enhance(OpenJpaEnhancerMojo.java:125)
> 
> > 
> > 
> > 
> > So basically you need to get that persistence-unit
> name to the PCEnhancer or it looks like it processes all the
> persistence-units.
> > 
> > Thanks
> > Adam
> > 
> > Mark Struberg on 28/02/09 22:03, wrote:
> >> Hi!
> >> 
> >> @Randy, txs 4 the patch, good catch.
> >> 
> >> As I also commented in JIRA: A few points are
> still open
> >> 
> >> 1.) using a different configuration XML (other
> than persistence.xml) should
> >> be provided as own plugin attribute (and not in
> the 'additional properties'
> >> list).
> >> 
> >> 2.) using a different configuration XML must also
> work for the openjpa:sql
> >> and openjpa:schema mojos.
> >> 
> >> I will implement this after I'm back from
> vacation next week.
> >> 
> >> @Adam: Can you please checkout the latest from SVN
> and try it with this
> >> version?
> >> 
> >> svn co
> https://svn.codehaus.org/mojo/trunk/mojo/openjpa-maven-plugin
> >> 
> >> Do you have other wishes? So we can plan to make a
> 1.1 with ~ end of march.
> >> 
> >> txs and LieGrue, strub
> >> 
> >> 
> >> 
> >> --- Randy Watler <[email protected]>
> schrieb am Sa, 28.2.2009:
> >> 
> >>> Von: Randy Watler <[email protected]>
> Betreff: Re: [ANN] OpenJPA Maven
> >>> Plugin 1.0 Released An:
> [email protected] Datum: Samstag, 28.
> >>> Februar 2009, 5:38 Mark/Adam,
> >>> 
> >>> I have filed a JIRA ticket with a patch for
> this issue: http://jira.codehaus.org/browse/MOJO-1309
> >>> 
> >>> I am not sure why Adam is specifying the
> 'properties' property, but we use
> >>> it to ensure the enhancement is processing
> based off of a specific project
> >>> persistence.xml file... there are multiple
> persistence.xml files on the
> >>> classpath. I feel this is a fairly important
> bug to fix since I think it is
> >>> generally a regression from the 1.0-alpha
> version.
> >>> 
> >>> HTH,
> >>> 
> >>> Randy Watler Apache Portals Jetspeed2
> Committer
> >>> 
> >>> Mark Struberg wrote:
> >>>> Adam,
> >>>> 
> >>>> For what I've seen the
> 'properties'
> >>> property specifies a file which contains the
> configuration.
> >>>> So I'm honestly a bit confused about
> the value: META-INF/persistence.xml#OpenJpaTest
> >>>> 
> >>>> Can you please tell me what you like to
> achieve and
> >>> how your config file really looks like
> (including real filename).
> >>>> 
> >>>> Please note that the ant tasks imho calls
> the
> >>> PCEnhancer only via spawning an own java cmd.
> So any error occurring may
> >>> not get to your eyes there.
> >>>> 
> >>>> txs, strub
> >>>> 
> >>>> --- Mark Struberg
> <[email protected]> schrieb am
> >>> Fr, 27.2.2009:
> >>>> 
> >>>>> Von: Mark Struberg
> <[email protected]> Betreff: Re: [ANN] OpenJPA Maven
> >>>>> Plugin 1.0
> >>> Released
> >>>>> An: [email protected] Datum:
> Freitag, 27. Februar 2009, 0:11 Thanks for the response
> Adam! I will try to create an integration test
> >>>>> based on
> >>> your
> >>>>> info.
> >>>>> 
> >>>>> LieGrue, strub
> >>>>> 
> >>>>> 
> >>>>> --- Adam Hardy
> <[email protected]>
> >>> schrieb
> >>>>> am Do, 26.2.2009:
> >>>>> 
> >>>>> 
> >>>>>> Von: Adam Hardy
> >>> <[email protected]>
> >>>>>> Betreff: Re: [ANN] OpenJPA Maven
> Plugin 1.0
> >>> Released
> >>>>>> An: [email protected]
> Datum: Donnerstag, 26. Februar 2009,
> >>>>>> 0:59 Mark Struberg on 25/02/09
> 09:49, wrote:
> >>>>>> 
> >>>>>>> The Maven team is pleased to
> announce the
> >>> release
> >>>>>>> 
> >>>>> of
> >>>>> 
> >>>>>> the
> >>>>>> 
> >>>>>>> openjpa-maven-plugin-1.0
> >>>>>>> 
> >>>>>>> 
> >>>>>>> The plugin documentation can
> be found
> >>> here:
> >>>>>>> 
> >>> http://mojo.codehaus.org/openjpa-maven-plugin/
> >>>>>>> 
> >>>>>> I gave it a test run and I have an
> error.
> >>> After
> >>>>>> 
> >>>>> looking
> >>>>> 
> >>>>>> thro the docs, the source and
> looking at the
> >>> debug, I
> >>>>>> 
> >>>>> still
> >>>>> 
> >>>>>> can't figure it out. I get
> this error:
> >>>>>> 
> >>>>>>
> org.apache.openjpa.lib.util.ParseException:
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.conf.openjpaconfigurationi...@52dd4e95.properties
> >>>>> 
> >>>>>> =
> META-INF/persistence.xml#OpenJpaTest at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.util.Options.setInto(Options.java:237)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.util.Options.setInto(Options.java:181)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.conf.Configurations.populateConfiguration(Configurations.java:357)
> 
> >>> 
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4438)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4409)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:708)
> 
> >>> 
> >>>>> 
> >>>>>> .... Caused by:
> >>> java.lang.reflect.InvocationTargetException
> >>>>>> 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:597)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.util.Options.invoke(Options.java:401)
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.util.Options.setInto(Options.java:234)
> >>>>> 
> >>>>>> ... 27 more Caused by:
> java.util.MissingResourceException:
> META-INF/persistence.xml#OpenJpaTest#null at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.conf.ProductDerivations.load(ProductDerivations.java:272)
> 
> >>> 
> >>>>> 
> >>>>>> at
> >>>>>> 
> >>>>>> 
> >>>
> org.apache.openjpa.lib.conf.ConfigurationImpl.setProperties(ConfigurationImpl.java:762)
> 
> >>> 
> >>>>> 
> >>>>>> ... 33 more
> >>>>>> 
> >>>>>> 
> >>>>>> My config currently uses antrun,
> so I know I
> >>> don't
> >>>>>> 
> >>>>> have
> >>>>> 
> >>>>>> any major issues here. This is in
> my pom:
> >>>>>> 
> >>>>>> <plugin>
> >>>>>> 
> >>>>>> 
> >>>
> <artifactId>maven-war-plugin</artifactId>
> >>>>>> <configuration>
> >>>>>> 
> >>>>>> 
> >>>
> <warName>${project.artifactId}</warName>
> >>>>>> </configuration>
> </plugin> <plugin>
> >>>>>> 
> >>>>>> 
> >>>>>
> <groupId>org.codehaus.mojo</groupId>
> >>>>> 
> >>>>>> 
> >>>>>> 
> >>>>>> 
> >>>
> <artifactId>openjpa-maven-plugin</artifactId>
> >>>>> 
> >>>>>> <executions>
> <execution> <id>JPA Enhance</id>
> >>>>>> 
> >>> <phase>process-classes</phase>
> >>>>>> <goals>
> <goal>enhance</goal> </goals>
> </execution> </executions> <configuration>
> <toolProperties> <property>
> >>>>>> 
> >>> <name>properties</name>
> >>>>>> 
> >>>>>> 
> >>>>>> 
> >>>
> <value>META-INF/persistence.xml#OpenJpaTest</value>
> >>>>> 
> >>>>>> </property>
> </toolProperties> <classes>
> >>>>>> 
> >>>>>> 
> >>>>>> 
> >>>
> ${build.outputDirectory}/org/permacode/patternrepo/domain/entity/
> >>>>> 
> >>>>>> </classes>
> </configuration> </plugin>
> >>>>>> 
> >>>>>> Any idea what it could be, seeing
> that extra #null on the end of the persistence filename?
> > 
> >



Reply via email to