You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@openjpa.apache.org by pdd <pb...@gmail.com> on 2009/07/30 15:14:18 UTC
MySQLSyntaxErrorException: FUNCTION XYZ, does not exist
Sorry to continue to compare with EclipseLink but the application is working
just fine on TopLink/EclipseLink and I am trying to get it to work with
OpenJPA. The
http://n2.nabble.com/enhancing-entity-which-is-a-subclass-tp3333612p3333612.html
first problem was resolved by Rick (thanks!) and after using mapped-super
class element in orm.xml, I could get past that.
Now I am stuck with PersistenceException which has nested
MySQLSyntaxErrorException saying "FUNCTION ROLEID, does not exist".
Setting openjpa.Log to SQL=TRACE does not show the query (exception is
thrown) but below string is being passed to
em.createNativeQuery(queryString, entityClass) to create the Query object.
If I use the this SQL stmt directly on the DB thru sql client, it works fine
and returns correct result.
The queryString looks like this,
( SELECT Role_.ROLEID, Role_.COMPANYID, Role_.CLASSNAMEID, Role_.CLASSPK,
Role_.NAME, Role_.TITLE, Role_.DESCRIPTION, Role_.TYPE_, Role_.SUBTYPE FROM
lportal.Role_ WHERE (Role_.companyId = 10117) AND ( (Role_.name =
'Administrator') OR (Role_.name = 'Community Administrator') OR (Role_.name
= 'Community Member') OR (Role_.name = 'Community Owner') OR (Role_.name =
'Guest') OR (Role_.name = 'Organization Administrator') OR (Role_.name =
'Organization Member') OR (Role_.name = 'Organization Owner') OR (Role_.name
= 'Owner') OR (Role_.name = 'Power User') OR (Role_.name = 'User') ) )
--
View this message in context: http://n2.nabble.com/MySQLSyntaxErrorException%3A-FUNCTION-XYZ%2C-does-not-exist-tp3356221p3356221.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.
Re: MySQLSyntaxErrorException: FUNCTION XYZ, does not exist
Posted by pdd <pb...@gmail.com>.
Moving the mysql driver from 5.0.7 to 5.1.8 resolved this issue. Thanks!
But now I have hit the next and more serious hurdle but I will post that as
a new question.
--
View this message in context: http://n2.nabble.com/MySQLSyntaxErrorException%3A-FUNCTION-XYZ%2C-does-not-exist-tp3356221p3363137.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.
Re: MySQLSyntaxErrorException: FUNCTION XYZ, does not exist
Posted by Michael Dick <mi...@gmail.com>.
Hi,
Which version of the MySQL JDBC driver are you using?
OpenJPA creates callable statements when you use em.createNativeQuery(). On
many versions of the MySQL driver (anything < 5.1.6 in my experience) the
callable statement would only work if you were calling a stored procedure.
After upgrading to 5.1.6 we were able to use callable statements that don't
call a stored procedure.
If that doesn't help could you post the version of OpenJPA and MySQL you're
using?
-mike
pdd wrote:
>
> Sorry to continue to compare with EclipseLink but the application is
> working just fine on TopLink/EclipseLink and I am trying to get it to work
> with OpenJPA. The
> http://n2.nabble.com/enhancing-entity-which-is-a-subclass-tp3333612p3333612.html
> first problem was resolved by Rick (thanks!) and after using mapped-super
> class element in orm.xml, I could get past that.
>
> Now I am stuck with PersistenceException which has nested
> MySQLSyntaxErrorException saying "FUNCTION ROLEID, does not exist".
> Setting openjpa.Log to SQL=TRACE does not show the query (exception is
> thrown) but below string is being passed to
> em.createNativeQuery(queryString, entityClass) to create the Query object.
>
> If I use the this SQL stmt directly on the DB thru sql client, it works
> fine and returns correct result.
>
> The queryString looks like this,
> ( SELECT Role_.ROLEID, Role_.COMPANYID, Role_.CLASSNAMEID,
> Role_.CLASSPK, Role_.NAME, Role_.TITLE, Role_.DESCRIPTION, Role_.TYPE_,
> Role_.SUBTYPE FROM lportal.Role_ WHERE (Role_.companyId = 10117) AND (
> (Role_.name = 'Administrator') OR (Role_.name = 'Community Administrator')
> OR (Role_.name = 'Community Member') OR (Role_.name = 'Community Owner')
> OR (Role_.name = 'Guest') OR (Role_.name = 'Organization Administrator')
> OR (Role_.name = 'Organization Member') OR (Role_.name = 'Organization
> Owner') OR (Role_.name = 'Owner') OR (Role_.name = 'Power User') OR
> (Role_.name = 'User') ) )
>
>
--
View this message in context: http://n2.nabble.com/MySQLSyntaxErrorException%3A-FUNCTION-XYZ%2C-does-not-exist-tp3356221p3356404.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.