Hi,

if you want to use hibernate add
<provider>org.hibernate.ejb.HibernatePersistence</provider>

and hibernate jars in your app.

if not use openjpa properties to create databases + check your datasource
config in tomee.xml

Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau



2013/4/8 renz8 <[email protected]>
>
> Can someone please tell my what other causes this exception?
>
> <openjpa-2.2.0-r422266:1244990 fatal general error>
> org.apache.openjpa.persistence.PersistenceException: The transaction has
> been rolled back.  See the nested exceptions for details on the errors
that
> occurred.
>         at
>
org.apache.openjpa.kernel.BrokerImpl.newFlushException(BrokerImpl.java:2337)
>         at
org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2174)
>         at
org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2072)
>         at
>
org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1990)
>         at
>
org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:527)
>         at
>
org.apache.geronimo.transaction.manager.TransactionImpl.beforeCompletion(TransactionImpl.java:512)
>         at
>
org.apache.geronimo.transaction.manager.TransactionImpl.beforePrepare(TransactionImpl.java:413)
>         at
>
org.apache.geronimo.transaction.manager.TransactionImpl.commit(TransactionImpl.java:262)
>         at
>
org.apache.geronimo.transaction.manager.TransactionManagerImpl.commit(TransactionManagerImpl.java:252)
>         at
>
org.apache.openejb.core.transaction.JtaTransactionPolicy.completeTransaction(JtaTransactionPolicy.java:328)
>         at
> org.apache.openejb.core.transaction.TxRequired.commit(TxRequired.java:75)
>         at
>
org.apache.openejb.core.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:73)
>         at
>
org.apache.openejb.core.singleton.SingletonContainer._invoke(SingletonContainer.java:262)
>         at
>
org.apache.openejb.core.singleton.SingletonContainer.invoke(SingletonContainer.java:211)
>         at
>
org.apache.openejb.core.ivm.EjbObjectProxyHandler.synchronizedBusinessMethod(EjbObjectProxyHandler.java:253)
>         at
>
org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:248)
>         at
>
org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:92)
>         at
>
org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:279)
>         at
>
com.sprasia.rest.dao.nstudio.AccountDao$LocalBeanProxy.makePersistent(com/sprasia/rest/dao/nstudio/AccountDao.java)
>         at
>
com.sprasia.rest.dao.nstudio.AccountDaoTest.testMakePersistent(AccountDaoTest.java:43)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Unknown Source)
>         at
>
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>         at
>
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>         at
>
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>         at
>
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>         at
>
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at
>
org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
>         at
>
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
>         at
>
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
>         at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>         at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>         at
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>         at
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>         at
>
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at
>
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>         at
>
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>         at
>
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>         at
>
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>         at
>
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
>         at
>
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>         at
>
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: <openjpa-2.2.0-r422266:1244990 fatal general error>
> org.apache.openjpa.persistence.PersistenceException: user lacks privilege
or
> object not found: DTB_ACCOUNT {INSERT INTO xxx (....) VALUES (?, ?, ?, ?,
?,
> ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)} [code=-5501, state=42501]
>         at
org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4918)
>         at
>
org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4878)
>         at
>
org.apache.openjpa.jdbc.sql.HSQLDictionary.newStoreException(HSQLDictionary.java:376)
>         at
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:136)
>         at
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:110)
>         at
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:62)
>         at
>
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flush(PreparedStatementManagerImpl.java:89)
>         at
>
org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:550)
>         at
>
org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:106)
>         at
>
org.apache.openjpa.jdbc.kernel.BatchingConstraintUpdateManager.flush(BatchingConstraintUpdateManager.java:59)
>         at
>
org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:103)
>         at
>
org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:76)
>         at
>
org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:713)
>         at
>
org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:131)
>         ... 45 more
> Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: user lacks
> privilege or object not found: DTB_ACCOUNT {INSERT INTO xxxx ( ..... e)
> VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)} [code=-5501,
> state=42501]
>         at
>
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:247)
>         at
>
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:227)
>         at
>
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$000(LoggingConnectionDecorator.java:72)
>         at
>
org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection.prepareStatement(LoggingConnectionDecorator.java:550)
>         at
>
org.apache.openjpa.lib.jdbc.DelegatingConnection.prepareStatement(DelegatingConnection.java:448)
>         at
>
org.apache.openjpa.lib.jdbc.DelegatingConnection.prepareStatement(DelegatingConnection.java:448)
>         at
>
org.apache.openjpa.lib.jdbc.DelegatingConnection.prepareStatement(DelegatingConnection.java:441)
>         at
>
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.prepareStatement(PreparedStatementManagerImpl.java:287)
>         at
>
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushAndUpdate(PreparedStatementManagerImpl.java:112)
>         at
>
org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushAndUpdate(BatchingPreparedStatementManagerImpl.java:79)
>         at
>
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushInternal(PreparedStatementManagerImpl.java:99)
>         at
>
org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flush(PreparedStatementManagerImpl.java:87)
>
> I've already set up connection in tomee.xml..
> I've also set properties, datasource, persistence-unit and classes  in my
> persistence.xml
>
>         <persistence-unit name="MyRestApi" transaction-type="JTA">
>         <jta-data-source>MyDatasource</jta-data-source>
>                 <class>com.my.entity.PersonBean</class>
>             <properties>
>                 <property name="hibernate.dialect"
> value="org.hibernate.dialect.MySQLDialect"/>
>                 <property name="hibernate.hbm2ddl.auto" value="insert,
update,
> read, delete" />
>                 <property name="hibernate.show_sql" value="true" />
>             </properties>
>
> What else do i need to do?
>
>
>
>
>
> --
> View this message in context:
http://openejb.979440.n4.nabble.com/org-apache-openjpa-persistence-PersistenceException-user-lacks-privilege-or-object-not-found-tp4662083.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.

Reply via email to