You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@openjpa.apache.org by Diego Cattelan <di...@diegocattelan.it> on 2010/09/09 19:38:18 UTC

Problem with database schema creation

  Please help a JPA primer

- JDK 1.6.0_21
- OpenJPA 2.0.1
- FirebirdSQL 2.1.3 + Jaybird 2.1.6

I manually created a new empty database.
I have only 1 entity :
-----------------------------------------------------------------------------
@Entity
public class ana_anagrafica implements Serializable {
     private static final long serialVersionUID = 1L;

     private Long id;

     @Id
     @GeneratedValue(strategy = 
GenerationType.SEQUENCE,generator="ANA_ANAGRAFICA_GEN")
     public Long getId() {
         return id;
     }

     public void setId(Long id) {
         this.id = id;
     }
}
--------------------------------------------------------------------------------

on persistence.xml :

<property name="openjpa.jdbc.SynchronizeMappings" 
value="buildSchema(ForeignKeys=true)"/>

but when i run the application I get the exception

1161  it.diegocattelan.ninphea-persistence  TRACE  [mod_BootModule_2] 
openjpa.jdbc.JDBC - Initial connection autoCommit: false, holdability: 
2, TransactionIsolation: 2
1218  it.diegocattelan.ninphea-persistence  TRACE  [mod_BootModule_2] 
openjpa.jdbc.JDBC - <t 30303902, conn 28523022> [50 ms] close
9-set-2010 19.32.56 it.ninphea.boot.BootController moduleInit
GRAVE: null
<openjpa-2.0.1-r422266:989424 fatal user error> 
org.apache.openjpa.persistence.ArgumentException: Could not locate the 
sequence with name "ANA_ANAGRAFICA_GEN".  It is possible that the 
metadata file c
ontaining the sequence has not been parsed yet.  Make sure to use a 
persistent class whose metadata is in the same file somewhere in your 
application before requesting the sequence.
         at 
org.apache.openjpa.meta.MetaDataRepository.getSequenceMetaDataInternal(MetaDataRepository.java:2105)
         at 
org.apache.openjpa.meta.MetaDataRepository.getSequenceMetaData(MetaDataRepository.java:2090)
         at 
org.apache.openjpa.meta.MetaDataRepository.getSequenceMetaData(MetaDataRepository.java:2117)
         at 
org.apache.openjpa.meta.FieldMetaData.getValueSequenceMetaData(FieldMetaData.java:1052)
         at 
org.apache.openjpa.jdbc.meta.MappingTool.addSequenceComponents(MappingTool.java:623)
         at 
org.apache.openjpa.jdbc.meta.MappingTool.addSequenceComponents(MappingTool.java:597)
         at 
org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:484)
         at 
org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:456)
         at 
org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:155)
         at 
org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:159)
         at 
org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:117)
         at 
org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:212)
         at 
org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:156)
         at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:227)
         at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:154)
         at 
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:60)
         at 
it.ninphea.boot.BootController.moduleInit(BootController.java:68)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at 
it.diegocattelan.services.application.modules.proxy_spi.ModuleThread.elaboraEventoDiSistema(ModuleThread.java:238)
         at 
it.diegocattelan.services.application.modules.proxy_spi.ModuleThread.elaboraEvento(ModuleThread.java:301)
         at 
it.diegocattelan.services.application.modules.proxy_spi.ModuleThread.run(ModuleThread.java:184)

if I manually create the sequence the error doesn't change.

Any hint ?
Thank you