You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@turbine.apache.org by Aravinda Addala <ar...@majorband.co.uk> on 2001/04/19 14:03:04 UTC

Criteria.addTime generates error

What is wrong with the following code?

criteria.addTime(MyObjectPeer.DATEOFBIRTH,2001,4,5, Criteria.GREATER_EQUAL);
return MyObjectPeer.doSelect(criteria);

The error is:



[Thu Apr 19 12:56:38 GMT+01:00 2001] -- ERROR -- Turbine.handleException:
Syntax error or access violation: You have an error in your SQL syntax near
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
l.Sim' at line 1
[Thu Apr 19 12:56:38 GMT+01:00 2001] -- ERROR --
	Exception:  java.sql.SQLException: Syntax error or access violation: You
have an error in your SQL syntax near
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
l.Sim' at line 1
	Stack Trace follows:
	java.sql.SQLException: Syntax error or access violation: You have an error
in your SQL syntax near
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
l.Sim' at line 1
	at org.gjt.mm.mysql.MysqlIO.sendCommand(MysqlIO.java:497)
	at org.gjt.mm.mysql.MysqlIO.sqlQueryDirect(MysqlIO.java:550)
	at org.gjt.mm.mysql.MysqlIO.sqlQuery(MysqlIO.java:635)
	at org.gjt.mm.mysql.Connection.execSQL(Connection.java:882)
	at org.gjt.mm.mysql.Connection.execSQL(Connection.java:815)
	at org.gjt.mm.mysql.Statement.executeQuery(Statement.java:169)
	at org.gjt.mm.mysql.jdbc2.Statement.executeQuery(Statement.java:78)
	at com.workingdogs.village.QueryDataSet.<init>(QueryDataSet.java:112)
	at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1252)
	at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1215)
	at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1166)
	at org.apache.turbine.om.peer.BasePeer.doSelect(BasePeer.java:1095)
	at
com.majorband.tempus.om.BaseTimesheetPeer.doSelectVillageRecords(BaseTimeshe
etPeer.java:172)
	at
com.majorband.tempus.om.BaseTimesheetPeer.doSelect(BaseTimesheetPeer.java:14
1)
	at
com.majorband.tempus.modules.screens.timesheet.TimesheetSummary.getTimesheet
s(TimesheetSummary.java:139)
	at
com.majorband.tempus.modules.screens.timesheet.TimesheetSummary.doBuildTempl
ate(TimesheetSummary.java:44)
	at
org.apache.turbine.modules.screens.VelocityScreen.doBuildTemplate(VelocitySc
reen.java:115)
	at
org.apache.turbine.modules.screens.TemplateScreen.doBuild(TemplateScreen.jav
a:135)
	at org.apache.turbine.modules.Screen.build(Screen.java:98)
	at org.apache.turbine.modules.ScreenLoader.eval(ScreenLoader.java:129)
	at
org.apache.turbine.modules.layouts.VelocityECSLayout.doBuild(VelocityECSLayo
ut.java:103)
	at org.apache.turbine.modules.Layout.build(Layout.java:91)
	at org.apache.turbine.modules.LayoutLoader.exec(LayoutLoader.java:122)
	at
org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:171)
	at org.apache.turbine.modules.Page.build(Page.java:90)
	at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:123)
	at org.apache.turbine.Turbine.doGet(Turbine.java:414)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:246)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:191)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:254)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:201)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66)
	at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
.java:468)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
64)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2087)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66)
	at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:446)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
64)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:162)
	at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
66)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
	at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
818)
	at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:897)
	at java.lang.Thread.run(Thread.java:484)




---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-user-help@jakarta.apache.org


Re: Criteria.addTime generates error

Posted by Leon Messerschmidt <le...@opticode.co.za>.
Hi,

The Peer models uses PreparedStatements for doInsert() and doUpdate(), but
not for doSelect().  You have some options to do this:

1.  You can pass a string to Criteria.add() that conforms to the syntax of
your DB
2.  You can create your own PreparedStatement and use
MyObjectPeer.resultSet2Objects()
3.  You can edit BasePeer to use PreparedStatements and submit a patch :-)

~ Leon

----- Original Message -----
From: "Aravinda Addala" <ar...@majorband.co.uk>
To: <tu...@jakarta.apache.org>
Sent: Thursday, April 19, 2001 2:03 PM
Subject: Criteria.addTime generates error


> What is wrong with the following code?
>
> criteria.addTime(MyObjectPeer.DATEOFBIRTH,2001,4,5,
Criteria.GREATER_EQUAL);
> return MyObjectPeer.doSelect(criteria);
>
> The error is:
>
>
>
> [Thu Apr 19 12:56:38 GMT+01:00 2001] -- ERROR -- Turbine.handleException:
> Syntax error or access violation: You have an error in your SQL syntax
near
>
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
> l.Sim' at line 1
> [Thu Apr 19 12:56:38 GMT+01:00 2001] -- ERROR --
> Exception:  java.sql.SQLException: Syntax error or access violation: You
> have an error in your SQL syntax near
>
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
> l.Sim' at line 1
> Stack Trace follows:
> java.sql.SQLException: Syntax error or access violation: You have an error
> in your SQL syntax near
>
'[time=?,areFieldsSet=false,areAllFieldsSet=false,lenient=true,zone=java.uti
> l.Sim' at line 1
> at org.gjt.mm.mysql.MysqlIO.sendCommand(MysqlIO.java:497)
> at org.gjt.mm.mysql.MysqlIO.sqlQueryDirect(MysqlIO.java:550)
> at org.gjt.mm.mysql.MysqlIO.sqlQuery(MysqlIO.java:635)
> at org.gjt.mm.mysql.Connection.execSQL(Connection.java:882)
> at org.gjt.mm.mysql.Connection.execSQL(Connection.java:815)
> at org.gjt.mm.mysql.Statement.executeQuery(Statement.java:169)
> at org.gjt.mm.mysql.jdbc2.Statement.executeQuery(Statement.java:78)
> at com.workingdogs.village.QueryDataSet.<init>(QueryDataSet.java:112)
> at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1252)
> at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1215)
> at org.apache.turbine.om.peer.BasePeer.executeQuery(BasePeer.java:1166)
> at org.apache.turbine.om.peer.BasePeer.doSelect(BasePeer.java:1095)
> at
>
com.majorband.tempus.om.BaseTimesheetPeer.doSelectVillageRecords(BaseTimeshe
> etPeer.java:172)
> at
>
com.majorband.tempus.om.BaseTimesheetPeer.doSelect(BaseTimesheetPeer.java:14
> 1)
> at
>
com.majorband.tempus.modules.screens.timesheet.TimesheetSummary.getTimesheet
> s(TimesheetSummary.java:139)
> at
>
com.majorband.tempus.modules.screens.timesheet.TimesheetSummary.doBuildTempl
> ate(TimesheetSummary.java:44)
> at
>
org.apache.turbine.modules.screens.VelocityScreen.doBuildTemplate(VelocitySc
> reen.java:115)
> at
>
org.apache.turbine.modules.screens.TemplateScreen.doBuild(TemplateScreen.jav
> a:135)
> at org.apache.turbine.modules.Screen.build(Screen.java:98)
> at org.apache.turbine.modules.ScreenLoader.eval(ScreenLoader.java:129)
> at
>
org.apache.turbine.modules.layouts.VelocityECSLayout.doBuild(VelocityECSLayo
> ut.java:103)
> at org.apache.turbine.modules.Layout.build(Layout.java:91)
> at org.apache.turbine.modules.LayoutLoader.exec(LayoutLoader.java:122)
> at
> org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:171)
> at org.apache.turbine.modules.Page.build(Page.java:90)
> at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:123)
> at org.apache.turbine.Turbine.doGet(Turbine.java:414)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:246)
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:191)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
ja
> va:254)
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
> at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:201)
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
> at
>
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
> .java:468)
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2087)
> at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164
> )
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:446)
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 64)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
> at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :162)
> at
>
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:5
> 66)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:879)
> at
>
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> 818)
> at
>
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:897)
> at java.lang.Thread.run(Thread.java:484)
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: turbine-user-help@jakarta.apache.org
>



---------------------------------------------------------------------
To unsubscribe, e-mail: turbine-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: turbine-user-help@jakarta.apache.org