You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Shawn Jiang (JIRA)" <ji...@apache.org> on 2010/10/29 09:09:20 UTC
[jira] Updated: (GERONIMO-5452) PersistenceUnitBuilder cannot find
persistence.xml on inPlace deployments
[ https://issues.apache.org/jira/browse/GERONIMO-5452?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shawn Jiang updated GERONIMO-5452:
----------------------------------
Fix Version/s: 2.2.1
2.1.7
> PersistenceUnitBuilder cannot find persistence.xml on inPlace deployments
> -------------------------------------------------------------------------
>
> Key: GERONIMO-5452
> URL: https://issues.apache.org/jira/browse/GERONIMO-5452
> Project: Geronimo
> Issue Type: Bug
> Security Level: public(Regular issues)
> Components: persistence
> Affects Versions: 2.1.4, 2.1.5, 2.1.6, 2.2
> Environment: Linux. Tested on 2.1.4 and 2.1.5 release versions, but I'm sure it's the same in 2.2 and versions prior to 2.1.4.
> Reporter: Ryan Sumner
> Assignee: Shawn Jiang
> Fix For: 2.1.7, 2.2.1
>
> Attachments: inplace-persistencebuilder.patch
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> OpenJPA PersistenceUnitBuilder will fail to find persistence.xml files within modules of the EAR when using the inPlace deployment option. The following exception will be thrown during deployment:
> org.apache.geronimo.common.DeploymentException: Could not resolve reference at deploy time for query ?name=persistence/mydb#org.apache.geronimo.persistence.PersistenceUnitGBean. No GBeans found.
> Where mydb is the name of the persistence unit.
> I've attached a patch for the fix:
> --- PersistenceUnitBuilder.java.orig 2010-07-14 20:26:55.991703857 -0500
> +++ PersistenceUnitBuilder.java 2010-07-17 16:22:22.786269319 -0500
> @@ -105,9 +105,16 @@
> // buildPersistenceUnits(persistence, module, module.getTargetPath());
> }
> try {
> - File rootBaseFile = module.getRootEarContext().getConfiguration().getConfigurationDir();
> + File rootBaseFile;
> + URI moduleBaseURI;
> + if(module.getRootEarContext().getConfigurationData().getInPlaceConfigurationDir() == null) {
> + rootBaseFile = module.getRootEarContext().getConfigurationData().getConfigurationDir();
> + moduleBaseURI = moduleContext.getBaseDir().toURI();
> + } else {
> + rootBaseFile = module.getRootEarContext().getConfigurationData().getInPlaceConfigurationDir();
> + moduleBaseURI = moduleContext.getConfigurationData().getInPlaceConfigurationDir().toURI();
> + }
> String rootBase = rootBaseFile.toURI().normalize().toString();
> - URI moduleBaseURI = moduleContext.getBaseDir().toURI();
> Map rootGeneralData = module.getRootEarContext().getGeneralData();
> ClassPathList manifestcp = (ClassPathList) module.getEarContext().getGeneralData().get(ClassPathList.class);
> if (manifestcp == null) {
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.