java.sql.SQLException: ORA-01722: 无效数字 at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:287)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:742)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:212)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:951)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1159)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3284)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3367)
at com.pd.Daoimpl.ProductImpl.deleteAssociator(ProductImpl.java:33)
at com.pd.struts.action.DelproductAction.execute(DelproductAction.java:43)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.pd.filter.CharSetFilter.doFilter(CharSetFilter.java:22)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)

解决方案 »

  1.   

    at com.pd.Daoimpl.ProductImpl.deleteAssociator(ProductImpl.java:33)
    应该是没传入正确的参数吧
    如 delete from table where id = ?
    这个?是不是传入错了?看下ProductImpl.java:33(异常抛出的位置)行左右(一般是上面几行)
      

  2.   

    public boolean deleteAssociator(String productID) {
    MyConnection conn = new MyConnection();
    productID = productID.substring(0, productID.length() - 1);
    System.out.println(productID);
    String sql = "delete from product where productID in ("+ productID +") ";
    try {
    pre = conn.getconnection().prepareStatement(sql);
    int num = pre.executeUpdate();
    if (num != 0) {
    return true;
    }
    } catch (SQLException e) {
    e.printStackTrace();
    }
    return false;
    }我的IMPL里面是这个,大神帮我看看那里有错
      

  3.   

    public boolean deleteAssociator(String productID) {
    MyConnection conn = new MyConnection();
    productID = productID.substring(0, productID.length() - 1);
    System.out.println(productID);
    String sql = "delete from product where productID in ("+ productID +") ";
    try {
    pre = conn.getconnection().prepareStatement(sql);
    int num = pre.executeUpdate();
    if (num != 0) {
    return true;
    }
    } catch (SQLException e) {
    e.printStackTrace();
    }
    return false;
    }
    这个是我的IMPL
      

  4.   

    SQL的某个字段需要数字,你可能传了字符串进去
      

  5.   

    productID   输出来是什么  是不是多了个,或者多了空格什么的
      

  6.   

    我做修改的时候有2个action,一个获得数据一个进行修改,修改的action是能够运行的,但是获得数据的action运行的时候发生了错误
    org.apache.jasper.JasperException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    com.pd.filter.CharSetFilter.doFilter(CharSetFilter.java:22)
    root cause java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    java.util.ArrayList.RangeCheck(Unknown Source)
    java.util.ArrayList.get(Unknown Source)
    org.apache.jsp.updateProduct_jsp._jspService(updateProduct_jsp.java:133)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    com.pd.filter.CharSetFilter.doFilter(CharSetFilter.java:22)请问这是什么情况