PersistenceException when running SynchronizeMappings [closed]
I have eclipse java project using apache openJPA
. Has eclipse got some kind of cache need to be clean?
I had one class , UsaState ...mapped to USA_STATE
table. I have removed it from database, from persistence.xml
, from project, from references in mappings ...there are no other referenced project and I have this error :
Exception in thread "main" org.apache.openjpa.persistence.PersistenceException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE = innodb' at line 1 {stmnt 7860099 CREATE TABLE USA_STATE ( ID BIGINT NOT NULL AUTO_INCREMENT, NAME VARCHAR(255), ADDRESS BIGINT, PRIMARY KEY (ID) ) TYPE = innodb } [code=1064, state=42000] at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:553) at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:453) at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:159) at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:119) at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:189) at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl开发者_StackOverflow中文版.java:145) at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:56) at TestMain.main(TestMain.java:18) Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE = innodb' at line 1 {stmnt 7860099 CREATE TABLE USA_STATE ( ID BIGINT NOT NULL AUTO_INCREMENT, NAME VARCHAR(255), ADDRESS BIGINT, PRIMARY KEY (ID) ) TYPE = innodb } [code=1064, state=42000] at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:192) at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:57) at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:762) at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:114) at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1191) at org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:949) at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:526) at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:344) at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:321) at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:501) ... 9 more
Where could be the problem? In what way could persistence remember that table or entity? Is there neccesary some clean? I have already cleaned project some times...
Thanks
Please move to a newer version of JPA >= 2.0.0.
https://issues.apache.org/jira/browse/OPENJPA-1530
Try restarting your database or execute command flush tables
.
精彩评论