Hi Adam,

thank you. If I remove the <mapping-file> I still get the same error. I
change the header to your header but still no difference. I paste the new
version of my files below.

Both orm.xml and persistence.xml are in the same directory META-INF.

Any further advice?
--------------

<?xml version="1.0" encoding="UTF-8"?>
<entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm
http://java.sun.com/xml/ns/persistence/orm_1_0.xsd";
  version="1.0">
    <entity class="datamodel.Person">
      <table name="MYAPPLICATION.PEOPLETABLE"/>
        <attributes>
            <id name="id" />
            <basic name="firstName" />
            <basic name="lastName" />
            <transient name="nonsenseField" />
        </attributes>
    </entity>
</entity-mappings>

<?xml version="1.0" encoding="UTF-8"?>
---------------
<persistence xmlns="http://java.sun.com/xml/ns/persistence";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; version="1.0">

    <persistence-unit name="people" transaction-type="RESOURCE_LOCAL">

        <provider>
            org.apache.openjpa.persistence.PersistenceProviderImpl
        </provider>
        <mapping-file>META-INF/orm.xml</mapping-file>

        <!-- We must enumerate each entity in the persistence unit -->
        <class>datamodel.Person</class>

        <properties>
            <property name="openjpa.ConnectionURL"

value="jdbc:derby:C:/DerbyDatabases/hellojpa-database9;create=true" />
            <property name="openjpa.ConnectionDriverName"
                value="org.apache.derby.jdbc.EmbeddedDriver" />
            <property name="openjpa.ConnectionUserName" value="" />
            <property name="openjpa.ConnectionPassword" value="" />

            <!--
                Automatically create tables in the database
                for entities. Not for production use
                -->
            <property name="openjpa.jdbc.SynchronizeMappings"
                value="buildSchema" />

        </properties>
    </persistence-unit>

</persistence>




Best regards, Lars


2008/3/31, Adam Hardy <[EMAIL PROTECTED]>:
>
> Hi Lars,
>
> that is a weird error that I haven't seen before - it looks like OpenJPA
> is
> confusing the table name with the class name.
>
> In case it helps, you don't need to reference the orm.xml in the
> persistence.xml. Not sure if it's a problem when you do, try without.
>
> orm.xml looks like it's in the same directory as persistence.xml from your
> email. perhaps you should double-check.
>
> my orm.xml header is slightly different:
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm";
>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm
>
> http://java.sun.com/xml/ns/persistence/orm_1_0.xsd";
>    version="1.0">
>
> I do not run the OpenJPA enhancer and you shouldn't need to, but I am
> using the
> OpenJPA v1.1.0 snapshot, not 1.0.x.
>
>
>
>
>
> Lars Vogel on 30/03/08 19:29, wrote:
> > Hi,
> >
> > Can anyone point me to a working standalone example there a a orm.xmlfile
> > is used instead of Annotations?
> >
> > I'm able to build a small example with annotations but if I try the same
> > with orm.xml I receive the following error:
> >
> > Exception in thread "main" <openjpa-1.0.2-r420667:627158 fatal user
> error>
> > org.apache.openjpa.persistence.ArgumentException: Could not locate
> metadata
> > for the class using alias "MYAPPLICATION.PEOPLETABLE". This could mean
> that
> > the OpenJPA enhancer or load-time weaver was not run on the type whose
> alias
> > is "MYAPPLICATION.PEOPLETABLE". Registered alias mappings: "{
> > MYAPPLICATION.PEOPLETABLE=null, Person=[class datamodel.Person]}"
> >
> >
> > I have the following orm.xml
> >
> > <entity-mappings xmlns="http://java.sun.com/xml/ns/persistence/orm";
> >     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>
> >     xsi:schemaLocation="
> http://java.sun.com/xml/ns/persistence/ormorm_1_0.xsd";
>
> >     version="1.0">
> >     <entity class="datamodel.Person">
> >       <table name="MYAPPLICATION.PEOPLETABLE"/>
> >         <attributes>
> >             <id name="id" />
> >             <basic name="firstName" />
> >             <basic name="lastName" />
> >             <transient name="nonsenseField" />
> >         </attributes>
> >     </entity>
> > </entity-mappings>
> >
> > I have the following persistence.xml
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <!--
> >     Licensed to the Apache Software Foundation (ASF) under one
> >     or more contributor license agreements.  See the NOTICE file
> >     distributed with this work for additional information
> >     regarding copyright ownership.  The ASF licenses this file
> >     to you under the Apache License, Version 2.0 (the
> >     "License"); you may not use this file except in compliance
> >     with the License.  You may obtain a copy of the License at
> >
> >     http://www.apache.org/licenses/LICENSE-2.0
> >
> >     Unless required by applicable law or agreed to in writing,
> >     software distributed under the License is distributed on an
> >     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> >     KIND, either express or implied.  See the License for the
> >     specific language governing permissions and limitations
> >     under the License.
> > -->
> > <persistence xmlns="http://java.sun.com/xml/ns/persistence";
> >     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; version="1.0">
> >
> >     <!--
> >         A persistence unit is a set of listed persistent entities as
> well
> >         the configuration of an EntityManagerFactory. We configure each
> >         example in a separate persistence-unit.
> >     -->
> >     <persistence-unit name="people" transaction-type="RESOURCE_LOCAL">
> >
> >         <!--
> >             The default provider can be OpenJPA, or some other product.
> >             This element is optional if OpenJPA is the only JPA provider
> >             in the current classloading environment, but can be
> specified
> >             in cases where there are multiple JPA implementations
> available.
> >         -->
> >
> >         <provider>
> >             org.apache.openjpa.persistence.PersistenceProviderImpl
> >         </provider>
> >         <mapping-file>META-INF/orm.xml</mapping-file>
> >
> >         <!-- We must enumerate each entity in the persistence unit -->
> >         <class>datamodel.Person</class>
> >
> >         <properties>
> >             <property name="openjpa.ConnectionURL"
> >
> > value="jdbc:derby:C:/DerbyDatabases/hellojpa-database9;create=true" />
> >             <property name="openjpa.ConnectionDriverName"
> >                 value="org.apache.derby.jdbc.EmbeddedDriver" />
> >             <property name="openjpa.ConnectionUserName" value="" />
> >             <property name="openjpa.ConnectionPassword" value="" />
> >
> >             <!--
> >                 Tell OpenJPA to automatically create tables in the
> database
> >                 for entities. Note that this should be disabled when
> >                 running against a production database, since you
> probably
> >                 don't want to be altering the schema at runtime.
> >             -->
> >             <property name="openjpa.jdbc.SynchronizeMappings"
> >                 value="buildSchema" />
> >
> >         </properties>
> >     </persistence-unit>
> >
> > </persistence>
>
>

Reply via email to