You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by renz8 <ll...@gmail.com> on 2013/04/08 12:20:53 UTC

org.apache.openjpa.persistence.PersistenceException: user lacks privilege or object not found:

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.

Re: org.apache.openjpa.persistence.PersistenceException: user lacks privilege or object not found:

Posted by Romain Manni-Bucau <rm...@gmail.com>.
can you reproduce it? we have tests using hibernate and they pass

a simple one is here
https://svn.apache.org/repos/asf/tomee/tomee/trunk/examples/jpa-hibernate/

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



2013/4/9 renz8 <ll...@gmail.com>

> yes, i've already done those things. .
> when i added the provider,
> then perform the junit test.. there will be another exception
> ClassNotFoundException:org.hibernate.ejb.HibernatePersistence
> but, i've already added the hibernate3.jar
>
>
>
> --
> View this message in context:
> http://openejb.979440.n4.nabble.com/org-apache-openjpa-persistence-PersistenceException-user-lacks-privilege-or-object-not-found-tp4662083p4662120.html
> Sent from the OpenEJB User mailing list archive at Nabble.com.
>

Re: org.apache.openjpa.persistence.PersistenceException: user lacks privilege or object not found:

Posted by renz8 <ll...@gmail.com>.
yes, i've already done those things. .
when i added the provider,
then perform the junit test.. there will be another exception
ClassNotFoundException:org.hibernate.ejb.HibernatePersistence
but, i've already added the hibernate3.jar



--
View this message in context: http://openejb.979440.n4.nabble.com/org-apache-openjpa-persistence-PersistenceException-user-lacks-privilege-or-object-not-found-tp4662083p4662120.html
Sent from the OpenEJB User mailing list archive at Nabble.com.

Re: org.apache.openjpa.persistence.PersistenceException: user lacks privilege or object not found:

Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <ll...@gmail.com>
>
> 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.