Java程序+;Oracle数据库->;空指针异常

Java程序+;Oracle数据库->;空指针异常,java,oracle,stored-procedures,nullpointerexception,Java,Oracle,Stored Procedures,Nullpointerexception,我不知道,但我总是尝试执行我的程序来创建产品。返回NullPointerException 所以我调试所有的值,问题发生在第行“cs.execute” 我的程序 这是我的程序: CREATE OR REPLACE PROCEDURE CREATE_PRODUTO( RESULT OUT int, ID OUT PRODUTOS.ID%type, NOME IN PRODUTOS.NOME%TYPE, VALOR IN PRODUTOS.VALOR%TYPE,

我不知道,但我总是尝试执行我的程序来创建产品。返回NullPointerException

所以我调试所有的值,问题发生在第行“cs.execute”

我的程序 这是我的程序:

CREATE OR REPLACE PROCEDURE CREATE_PRODUTO(
    RESULT OUT int,
    ID OUT PRODUTOS.ID%type,
    NOME IN PRODUTOS.NOME%TYPE,
    VALOR IN PRODUTOS.VALOR%TYPE,
    TIPO_ID IN PRODUTOS.ID_TIPO_PRODUTO%TYPE
  )
IS
BEGIN
  RESULT := 1;
  INSERT INTO PRODUTOS (NOME, VALOR, ID_TIPO_PRODUTO) VALUES (NOME, VALOR, TIPO_ID) returning ID into ID;
  COMMIT;
  EXCEPTION 
  WHEN OTHERS THEN
      RESULT := 0;
      ROLLBACK;
END;
/
我的SQLLite测试 如果我执行SQL命令,它会工作:

DECLARE 
  RESULT int;
  ID PRODUTOS.ID%type;
BEGIN

   CREATE_PRODUTO(RESULT, ID, '3', 1, 2);
   DBMS_OUTPUT.PUT_LINE(RESULT || ' ' ||ID);
END;
/
这是我的java源代码。我的过程将返回2个ID已注册或更改的值,如果过程执行成功,则返回结果

代码停在第行

cs.execute();
JAVA源代码 跟踪:

java.lang.NullPointerException
        at oracle.jdbc.driver.T4C8Oall.getNumRows(T4C8Oall.java:917)
        at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1252)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1585)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3929)
        at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:4118)
        at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:8721)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:4093)
        at utils.models.ProdutosIterator.save(ProdutosIterator.java:89)
        at controllers.Produtos.save(Produtos.java:67)
        at Routes$$anonfun$routes$1$$anonfun$applyOrElse$12$$anonfun$apply$12.apply(routes_routing.scala:230)
        at Routes$$anonfun$routes$1$$anonfun$applyOrElse$12$$anonfun$apply$12.apply(routes_routing.scala:230)
        at play.core.Router$HandlerInvokerFactory$$anon$4.resultCall(Router.scala:264)
        at play.core.Router$HandlerInvokerFactory$JavaActionInvokerFactory$$anon$15$$anon$1.invocation(Router.scala:255)
        at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:55)
        at play.core.j.JavaAction$$anonfun$11.apply(JavaAction.scala:82)
        at play.core.j.JavaAction$$anonfun$11.apply(JavaAction.scala:82)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
        at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:40)
        at play.api.libs.iteratee.Execution$trampoline$.execute(Execution.scala:46)
        at play.core.j.HttpExecutionContext.execute(HttpExecutionContext.scala:32)
        at scala.concurrent.impl.Future$.apply(Future.scala:31)
        at scala.concurrent.Future$.apply(Future.scala:492)
        at play.core.j.JavaAction$class.apply(JavaAction.scala:82)
        at play.core.Router$HandlerInvokerFactory$JavaActionInvokerFactory$$anon$15$$anon$1.apply(Router.scala:252)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130)
        at play.utils.Threads$.withContextClassLoader(Threads.scala:21)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4.apply(Action.scala:129)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4.apply(Action.scala:128)
        at scala.Option.map(Option.scala:145)
        at play.api.mvc.Action$$anonfun$apply$1.apply(Action.scala:128)
        at play.api.mvc.Action$$anonfun$apply$1.apply(Action.scala:121)
        at play.api.libs.iteratee.Iteratee$$anonfun$mapM$1.apply(Iteratee.scala:483)
        at play.api.libs.iteratee.Iteratee$$anonfun$mapM$1.apply(Iteratee.scala:483)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMapM$1.apply(Iteratee.scala:519)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMapM$1.apply(Iteratee.scala:519)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMap$1$$anonfun$apply$14.apply(Iteratee.scala:496)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMap$1$$anonfun$apply$14.apply(Iteratee.scala:496)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
        at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:41)
        at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:393)
        at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
有时在位置3不支持异常的消息令牌SQL92


抱歉:我的消息来源有葡萄牙语的东西。任何需要理解的问题都可以向我发送一条消息。

好吧,哪一行引发异常???之后:cs.execute();我只是犯了一个错误。我忘了打电话了query@GuilhermeSoares添加呼叫是否解决了问题?是的,它解决了问题
java.lang.NullPointerException
        at oracle.jdbc.driver.T4C8Oall.getNumRows(T4C8Oall.java:917)
        at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1252)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1585)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3929)
        at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:4118)
        at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:8721)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:4093)
        at utils.models.ProdutosIterator.save(ProdutosIterator.java:89)
        at controllers.Produtos.save(Produtos.java:67)
        at Routes$$anonfun$routes$1$$anonfun$applyOrElse$12$$anonfun$apply$12.apply(routes_routing.scala:230)
        at Routes$$anonfun$routes$1$$anonfun$applyOrElse$12$$anonfun$apply$12.apply(routes_routing.scala:230)
        at play.core.Router$HandlerInvokerFactory$$anon$4.resultCall(Router.scala:264)
        at play.core.Router$HandlerInvokerFactory$JavaActionInvokerFactory$$anon$15$$anon$1.invocation(Router.scala:255)
        at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:55)
        at play.core.j.JavaAction$$anonfun$11.apply(JavaAction.scala:82)
        at play.core.j.JavaAction$$anonfun$11.apply(JavaAction.scala:82)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
        at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:40)
        at play.api.libs.iteratee.Execution$trampoline$.execute(Execution.scala:46)
        at play.core.j.HttpExecutionContext.execute(HttpExecutionContext.scala:32)
        at scala.concurrent.impl.Future$.apply(Future.scala:31)
        at scala.concurrent.Future$.apply(Future.scala:492)
        at play.core.j.JavaAction$class.apply(JavaAction.scala:82)
        at play.core.Router$HandlerInvokerFactory$JavaActionInvokerFactory$$anon$15$$anon$1.apply(Router.scala:252)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4$$anonfun$apply$5.apply(Action.scala:130)
        at play.utils.Threads$.withContextClassLoader(Threads.scala:21)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4.apply(Action.scala:129)
        at play.api.mvc.Action$$anonfun$apply$1$$anonfun$apply$4.apply(Action.scala:128)
        at scala.Option.map(Option.scala:145)
        at play.api.mvc.Action$$anonfun$apply$1.apply(Action.scala:128)
        at play.api.mvc.Action$$anonfun$apply$1.apply(Action.scala:121)
        at play.api.libs.iteratee.Iteratee$$anonfun$mapM$1.apply(Iteratee.scala:483)
        at play.api.libs.iteratee.Iteratee$$anonfun$mapM$1.apply(Iteratee.scala:483)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMapM$1.apply(Iteratee.scala:519)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMapM$1.apply(Iteratee.scala:519)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMap$1$$anonfun$apply$14.apply(Iteratee.scala:496)
        at play.api.libs.iteratee.Iteratee$$anonfun$flatMap$1$$anonfun$apply$14.apply(Iteratee.scala:496)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
        at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
        at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:41)
        at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:393)
        at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)