[jira] Updated: (OPENJPA-9) PCEnhancer not processing multiple PU's defined within a single persistence.xml file
[ https://issues.apache.org/jira/browse/OPENJPA-9?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Linskey updated OPENJPA-9: -- Fix Version/s: 0.9.7 PCEnhancer not processing multiple PU's defined within a single persistence.xml file Key: OPENJPA-9 URL: https://issues.apache.org/jira/browse/OPENJPA-9 Project: OpenJPA Issue Type: Bug Components: jpa Reporter: Kevin Sutter Fix For: 0.9.7 From a discussion with Patrick on the dev mailing list... = Me: According to the JPA spec, we can define multiple persistence-units in a single persistence.xml file. But, when I try to use this persistence.xml file as input to the PCEnhancer, it is only processing the first persistence-unit that is defined. I traced through the code and found that this is the case. When the persistence.xml file is processed, a null name is passed in for the desired persistence-unit (in the ConfigurationProviderImpl.load method) and, thus, only the first one defined is returned and used by the PCEnhancer. Patrick: IMO, the correct behavior should be: - PCEnhancer run with no arguments should load all the PUs in the classpath, find the OpenJPA (or unspecified) PUs, and run against all the classes defined by those PUs (including auto-scanning for PUs so configured). - The developer should not need to specify META-INF/persistence.xml when invoking the PCEnhancer. - We may want to provide a means to specify specific PUs to process. For example: java ...PCEnhancer -p META-INF/persistence.xml#foo or maybe just java ...PCEnhancer -p #foo for shorthand. Regardless, the current behavior seems wrong, and it seems that the best initial change would be to make PCEnhancer load all the PUs (the first bullet above), which means manually loading the META-INF/persistence.xml resources and finding the ones that are OpenJPA PUs, rather than relying on the javax.persistence.Persistence helper method to load them. = Writing this bug report so as not to lose track of this problem. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (OPENJPA-9) PCEnhancer not processing multiple PU's defined within a single persistence.xml file
[ https://issues.apache.org/jira/browse/OPENJPA-9?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Linskey updated OPENJPA-9: -- Priority: Minor (was: Major) PCEnhancer not processing multiple PU's defined within a single persistence.xml file Key: OPENJPA-9 URL: https://issues.apache.org/jira/browse/OPENJPA-9 Project: OpenJPA Issue Type: Bug Components: jpa Reporter: Kevin Sutter Priority: Minor Fix For: 0.9.7 From a discussion with Patrick on the dev mailing list... = Me: According to the JPA spec, we can define multiple persistence-units in a single persistence.xml file. But, when I try to use this persistence.xml file as input to the PCEnhancer, it is only processing the first persistence-unit that is defined. I traced through the code and found that this is the case. When the persistence.xml file is processed, a null name is passed in for the desired persistence-unit (in the ConfigurationProviderImpl.load method) and, thus, only the first one defined is returned and used by the PCEnhancer. Patrick: IMO, the correct behavior should be: - PCEnhancer run with no arguments should load all the PUs in the classpath, find the OpenJPA (or unspecified) PUs, and run against all the classes defined by those PUs (including auto-scanning for PUs so configured). - The developer should not need to specify META-INF/persistence.xml when invoking the PCEnhancer. - We may want to provide a means to specify specific PUs to process. For example: java ...PCEnhancer -p META-INF/persistence.xml#foo or maybe just java ...PCEnhancer -p #foo for shorthand. Regardless, the current behavior seems wrong, and it seems that the best initial change would be to make PCEnhancer load all the PUs (the first bullet above), which means manually loading the META-INF/persistence.xml resources and finding the ones that are OpenJPA PUs, rather than relying on the javax.persistence.Persistence helper method to load them. = Writing this bug report so as not to lose track of this problem. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.