Ciao a tutti, è il primo mio thread e ho il terribile sentore di scrivere nel posto sbagliato...comunque:
Basandomi sul sistema TomCat ho scritto un applicazione per archiviazione dati. Cerco di effettuare un'istruzione di UPDATE tramite sql utilizzando l'istruzione DateDiff. Lo scopo è quello di inserire l'età della persona all'interno del campo eta.
Vi riporto il codice (solo la parte che mi crea problemi) :
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
<%@ page session="true" language="java" contentType="text/html; charset=UTF-8" import="java.sql.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<sql:setDataSource scope="session" driver="sun.jdbc.odbc.JdbcOdbcDriver" url="jdbcdbc:intermed"/>
<sql:update>
UPDATE schede SET eta = DateDiff("yy",nascita,Now());
</sql:update>
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
ma mi viene restituito il seguente errore:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException:
select DateDiff("yyyy",nascita,Date()) as eta
from schede
: [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
org.apache.jasper.servlet.JspServletWrapper.handle JspException(JspServletWrapper.java:522)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:398)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
root cause
javax.servlet.ServletException: javax.servlet.jsp.JspException:
select DateDiff("yyyy",nascita,Date()) as eta
from schede
: [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
org.apache.jasper.runtime.PageContextImpl.doHandle PageException(PageContextImpl.java:848)
org.apache.jasper.runtime.PageContextImpl.handlePa geException(PageContextImpl.java:781)
org.apache.jsp.progetto.scheda2_jsp._jspService(sc heda2_jsp.java:287)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
root cause
java.sql.SQLException: [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
sun.jdbc.odbc.JdbcOdbc.SQLExecute(Unknown Source)
sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(Un known Source)
sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeQue ry(Unknown Source)
org.apache.taglibs.standard.tag.common.sql.QueryTa gSupport.doEndTag(Unknown Source)
org.apache.jsp.progetto.scheda2_jsp._jspx_meth_sql _005fquery_005f1(scheda2_jsp.java:2969)
org.apache.jsp.progetto.scheda2_jsp._jspx_meth_sql _005ftransaction_005f0(scheda2_jsp.java:2912)
org.apache.jsp.progetto.scheda2_jsp._jspService(sc heda2_jsp.java:263)
org.apache.jasper.runtime.HttpJspBase.service(Http JspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
org.apache.jasper.servlet.JspServletWrapper.servic e(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.18 logs.
--------------------------------------------------------------------------------
Apache Tomcat/6.0.18
Ho la certezza che i nomi di tabella e campo siano corretti per cui non mi spiego il motivo di questo errore.
Sperando di non aver fatto troppo casino vi ringrazio anticipatamente!![]()

dbc:intermed"/>
Rispondi quotando