geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shawn Jiang (JIRA)" <j...@apache.org>
Subject [jira] Updated: (GERONIMO-5452) PersistenceUnitBuilder cannot find persistence.xml on inPlace deployments
Date Fri, 29 Oct 2010 07:09:20 GMT

     [ 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.


Mime
View raw message