Problème MySQL via servlet
Bonjour,
j'ai une requete que je veux lancer à partir de ma servlet qui est la suivante :
Code:
select month(date),avg(http) from httptable group by month(date);
elle marche sans probleme, sauf que quand je l'execute dans ma servlet elle me genere une erreur
Partie JSP
Code:
1 2 3
| <label><input type="radio" name="choix" value="date" >Jour </label>
<label><input type="radio" name="choix" value="month(date)" >Mois </label>
<label><input type="radio" name="choix" value="year(date)" >Année </label> |
partie servlet
Code:
1 2 3 4 5 6 7 8 9
| TimeSeriesDemoTest http = new marouene.TimeSeriesDemoTest("Http");
String choix = request.getParameter("choix");
JFreeChart imagechart;
try {
imagechart = http.tracercourbe(""+choix+"","avg(http)","httptable","Evolution du transfert Http","Debit en Ko/s","group by "+choix+";"); |
ma fonction qui dessine
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| connexionBD cone = new connexionBD();
ResultSet rs = cone.execute("select "+Hour+","+debit+" from "+table+" "+where+"");
final TimeSeries series = new TimeSeries("Débit", Minute.class);
try {
while(rs.next()){
Timestamp v1;
v1 = rs.getTimestamp(Hour);
double v2=rs.getDouble(debit);
series.addOrUpdate( new Minute(v1), v2);
}
rs.close(); |
et
Code:
1 2 3
| public JFreeChart tracercourbe (String Hour, String debit, String table ,String title,String ordonné,String where) throws SQLException, IOException {
connexionBD con = new connexionBD();
TimeSeries series = con.dessiner(Hour,debit,table,where); |
ma fonction marche pour le choix date, mais par pour month(date) et year(date)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 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 'from httptable group by (month(date)' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
at com.mysql.jdbc.Util.getInstance(Util.java:382)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3603)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3535)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1989)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2150)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2620)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2570)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1476)
at metier.connexionBD.execute(connexionBD.java:30)
at metier.connexionBD.dessiner(connexionBD.java:39)
at marouene.TimeSeriesDemoTest.tracercourbe(TimeSeriesDemoTest.java:49)
at metier.servletchoice.processRequest(servletchoice.java:48)
at metier.servletchoice.doPost(servletchoice.java:66)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
11 avr. 2011 12:50:31 org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: "Servlet.service()" pour la servlet servletchoice a généré une exception
java.lang.NullPointerException
at metier.connexionBD.dessiner(connexionBD.java:42)
at marouene.TimeSeriesDemoTest.tracercourbe(TimeSeriesDemoTest.java:49)
at metier.servletchoice.processRequest(servletchoice.java:48)
at metier.servletchoice.doPost(servletchoice.java:66)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619) |