creating sql statement with formula in JSP fails ... why?
Hi there,
So, in a JSP form I connect to the db and then I have a query (which runs in the db) that has a very simple formula in it (see code below). When I test the JSP it says 'success' 5 out of 6 times but the other 1 time it has the error below. I appreciate any help!!!
<%@ page import="java.sql.*"%>
<%
Connection connection =null;
try{
Class.forName("org.postgresql.Driver");
connection = DriverManager.getConnection("jdbc:postgresql:dbname","postgres","dbpassword");
Statement stmt7 = connection.createStatement();
String sql7="update t_test_measurement_results set tmr06=tmr01/t_test_setup_results.tsr02 WHERE t_test_measurement_results.tmr_tsrid=t_test_setup_results.tsr_id AND t_test_measurement_results.tmr_tsrid='1' AND t_test_setup_results.tsr_tpid='1';";
stmt7.executeUpdate(sql7);
String sql6="update t_test_setup_results set tsr07=sum t_test_measurement_results.tmr07 WHERE t_test_measurement_results.tmr_tsrid= t_test_setup_results.tsr_id AND tsr_id="'+tsid+'";" ;
stmt6.executeUpdate(sql6);
%>
<result>success</result>
<%
}
catch (Exception e){
e.printStackTrace();
%>
<result>failure</result>
<%
}finally{
try{
connection.close();
}catch (SQLException e){
}
}
%>
Here is the intermittant error:
An error occurred at line: 4 in the jsp file: /my-apps/Peak/Jsp/formulas.jsp
Generated servlet error:
Invalid character constant
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:389)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
NOTE: there wasn't much more than this in the logs:
2005-10-25 09:46:49,800 [http-8080-Processor22] ERROR StandardWrapper[/lps:jsp] - Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 4 in the jsp file: /my-apps/Peak/Jsp/formulas.jsp
Generated servlet error:
Invalid character constant
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:389)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:731)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)

