在JDBC中获取游标时出现java.lang.NullPointerException

时间:2013-10-21 21:20:27

标签: java oracle rest tomcat nullpointerexception

我在访问过程作为out参数返回的游标时收到java.lang.NullPointerException。

以下是详细信息:

    CallableStatement pstmt = conn.prepareCall("{call PKP_UTIL.GET_VALUE(?,?,?)}");
    pstmt.setObject(1, parameter1);
    pstmt.setObject(2, parameter2);
    pstmt.registerOutParameter(3, OracleTypes.CURSOR);

    pstmt.executeUpdate(); //in this line all goes wrong

    ResultSet rs = (ResultSet)pstmt.getObject(3);

    while (rs.next()) {
         System.out.println(rs.getString(1) + "\t" + rs.getFloat(2) + "\t" + rs.getDate(3).toString());

    }

申请的详细信息如下: - Tomcat 6上的Restful WS - Oracle 11g((11.2.0.2.0) - JDK 1.7 - JDBC Thin驱动程序

如果我在桌面应用程序上尝试相同的代码,它就像一个魅力。

1 个答案:

答案 0 :(得分:0)

  

pstmt.executeUpdate(); //在这一行中出错了

不足为奇。它应该是execute(). executeUpdate()的Javadoc特别声明该语句必须是'SQL数据操作语言(DML)语句,例如INSERT,UPDATE或DELETE;或者不返回任何内容的SQL语句,例如DDL语句。'