Hi Laird,
I agree with you.  You should be able to specify a default schema and/or
catalog via the persistence-unit-defaults element of the orm.xml file.  I
just looked through our junits, and I don't see any tests for this
particular configuration...  I do see other defaults being tested, just not
the schema or the catalog.

And, although I can see Patrick's viewpoint in your referenced append on the
use of multiple orm.xml files, the JPA spec also documents it's position on
this situation (section 8.2.1.6.2):

*If multiple mapping files are specified (possibly including one or more
orm.xml files), the resulting mappings are obtained by combining the
mappings from all of the files.
The result is undefined if multiple mapping files (including any orm.xml
file) referenced within a single
persistence unit contain overlapping mapping information for any given
class.
*

Basically, you could still shoot yourself in the foot if you're not
careful.  But, it is legal to use multiple orm.xml files and we should be
combining the results to the best of our ability.

My take is that we should be honoring the default schema and catalog
settings, and if we're not, open a JIRA to get this resolved.

Thanks,
Kevin

On Tue, Nov 2, 2010 at 2:27 PM, Laird Nelson <[email protected]> wrote:

> I have a test suite that runs my JPA entities across all the major JPA
> providers.
>
> None of my entities has a schema name in it; I want to keep it that way.
>
> None of my entities are configured in any way other than annotations.
>
> I understand from the JPA specification that if I put in a
> <persistence-unit-defaults> element in my META-INF/orm.xml file, I can
> indicate a default catalog and a default schema to use.
>
> When I do this, indeed my EclipseLink and Hibernate tests pass.
>
> My OpenJPA tests fail.
>
> I then read this:
>
> http://openjpa.208410.n2.nabble.com/best-way-to-set-default-schema-across-all-entities-td215796.html
>
> I believe this is a misinterpretation of the specification.  Is there any
> way to get OpenJPA to honor the persistence-unit-defaults element in the
> orm.xml file and to apply it to entities that are not listed therein?
>
> I am using OpenJPA 2.0.0-beta3 (not 2.0.1, since that has a
> NullPointerException regression in named queries which I previously
> documented).
>
> Best,
> Laird
>

Reply via email to