Hi,
While evaluating jOOQ 3.9.1 I have trouble to call functions with BOOLEAN
as parameter type.
I use an Oracle 12c database:
CREATE OR REPLACE FUNCTION TestFunction3(Flag IN BOOLEAN) RETURN NUMBER IS
BEGIN
IF(Flag=TRUE) THEN
RETURN 1;
ELSE
RETURN 0;
END IF;
END;
/
My test looks like:
@Test
*public void *test3() *throws *Exception {
Number result = Routines.*testfunction3*(*create*.configuration(),
Boolean.*TRUE*);
*assertEquals*(1, result.intValue());
}
DEBUG org.jooq.tools.LoggerListener - Calling routine : declare b2
boolean := case ? when 0 then false when 1 then true else null end; begin ?
:= "TESTFUNCTION3"("FLAG" => b2); end;
DEBUG org.jooq.tools.LoggerListener - -> with bind values : declare b2
boolean := case 1 when 0 then false when 1 then true else null end; begin ?
:= "TESTFUNCTION3"("FLAG" => b2); end;
DEBUG org.springframework.jdbc.datasource.DataSourceUtils - Fetching JDBC
Connection from DataSource
DEBUG org.jooq.tools.LoggerListener - Exception
java.lang.NullPointerException
at org.jooq_3.9.1.ORACLE.debug(Unknown Source)
at
org.jooq.impl.AbstractRoutine.registerOutParameter(AbstractRoutine.java:1020)
at
org.jooq.impl.AbstractRoutine.registerOutParameters(AbstractRoutine.java:1010)
at
org.jooq.impl.AbstractRoutine.executeCallableStatement(AbstractRoutine.java:434)
at
org.jooq.impl.AbstractRoutine.execute(AbstractRoutine.java:347)
at
org.jooq.impl.AbstractRoutine.execute(AbstractRoutine.java:281)
at
com.lstelcom.spplus.db.Routines.testfunction3(Routines.java:10287)
at
com.lstelcom.spplus.jooq.JooqTests.test3(JooqTests.java:114)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75)
at
org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
at
org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
at
org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at
org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:252)
at
org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
at
org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at
org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at
org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at
org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at
org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at
org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at
org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
at
org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at
org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at
com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:51)
at
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:237)
at
com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Is this a known issue or do I miss anything?
Thank you,
Marcus
--
You received this message because you are subscribed to the Google Groups "jOOQ
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.