Good morning Lukas,
 
Please see in attachment the setup$m.pks file containing the declaration 
and definition fo the cursor.
 
Thank you, kind regards,

On Tuesday, March 24, 2015 at 11:56:30 PM UTC+1, Lukas Eder wrote:

> Hmm, interesting. This is clearly a bug - either in the code generator, or 
> in the way jOOQ handles the CUSTOM_REF_CURSOR type at runtime.
> Can you provide us with the PL/SQL declaration of setup$m, including 
> setup$m.CUSTOM_REF_CURSOR?
>
> Best Regards,
> Lukas
>
> 2015-03-24 14:38 GMT+01:00 <[email protected] <javascript:>>:
>
>> Good afternoon all,
>>
>> I have generated jOOQ classes for database objects in a Oracle 11g 
>> database: the generation was successful.
>>
>> One of the database objects is a PL/SQL procedure with the following 
>> signature:
>>
>> PROCEDURE search_public
>>
>> ( i_comref_id           IN      VARCHAR2                  
>>   ,i_free_text           IN      VARCHAR2
>>   ,i_is_manager          IN      VARCHAR2  
>>   ,i_current_user_login  IN      t$users.user_login%TYPE
>>   ,o_ref_list               OUT  setup$m.CUSTOM_REF_CURSOR
>>   ,i_orderby             IN      VARCHAR2
>>   ,i_order               IN      VARCHAR2
>>   ,o_result                 OUT  VARCHAR2)
>>
>> My jUnit test of the corresponding class SearchPublic() fails with the 
>> following stacktrace:
>>
>> java.lang.NullPointerException
>>  at org.jooq.impl.DefaultDataType.getSQLType(DefaultDataType.java:510)
>>  at org.jooq.impl.DefaultBinding.register(DefaultBinding.java:766)
>>  at 
>> org.jooq.impl.AbstractRoutine.registerOutParameter(AbstractRoutine.java:622)
>>  at 
>> org.jooq.impl.AbstractRoutine.registerOutParameters(AbstractRoutine.java:616)
>>  at 
>> org.jooq.impl.AbstractRoutine.executeCallableStatement(AbstractRoutine.java:339)
>>  at org.jooq.impl.AbstractRoutine.execute(AbstractRoutine.java:270)
>>  at org.jooq.impl.AbstractRoutine.execute(AbstractRoutine.java:256)
>>
>> The problems seem to originate in the instantiation
>> SearchPublic searchPublic = new SearchPublic();
>> and are described as follows by IntelliJ:
>> Method threw 'java.lang.NullPointerException' exception. Cannot evaluate 
>> domain.framew.packages.user$o.SearchPublic.toString()
>>
>> Do you know what might be going wrong?
>>
>> Thank you, kind regards,
>>
>> -- 
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
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.
CREATE OR REPLACE PACKAGE setup$m AS
--
-- 
CURSOR c$2columns IS
SELECT TO_CHAR(NULL) STR
      ,TO_CHAR(NULL) VAL
  FROM dual;
TYPE type_2columns IS TABLE OF c$2columns%ROWTYPE INDEX BY BINARY_INTEGER;
--
-- Global variable
g_appl_code      CONSTANT VARCHAR2(32)  := 'ERCADMIN';
g_appl_id        PLS_INTEGER            := 
application$m.get('ERCADMIN').appl_id;
g_err            PLS_INTEGER            := 0;
g_max_rows       NUMBER(3)              := 300;
g_smtp_hostname  CONSTANT  VARCHAR2(32) := 'internal-smtp.cec.eu.int';
g_smtp_portnum   CONSTANT  NUMBER(2)    := 25;
--
-- Global Types
TYPE CUSTOM_REF_CURSOR IS REF CURSOR;
TYPE type_id    IS TABLE OF INTEGER        INDEX BY BINARY_INTEGER;
TYPE type_v1    IS TABLE OF VARCHAR2(1)    INDEX BY BINARY_INTEGER;
TYPE type_v6    IS TABLE OF VARCHAR2(6)    INDEX BY BINARY_INTEGER;
TYPE type_v32   IS TABLE OF VARCHAR2(32)   INDEX BY BINARY_INTEGER;
TYPE type_v50   IS TABLE OF VARCHAR2(50)   INDEX BY BINARY_INTEGER;
TYPE type_v200  IS TABLE OF VARCHAR2(200)  INDEX BY BINARY_INTEGER;
TYPE type_v400  IS TABLE OF VARCHAR2(400)  INDEX BY BINARY_INTEGER;
TYPE type_v256  IS TABLE OF VARCHAR2(256)  INDEX BY BINARY_INTEGER;
TYPE type_v4000 IS TABLE OF VARCHAR2(4000) INDEX BY BINARY_INTEGER;
TYPE type_n15_2 IS TABLE OF NUMBER(15,2)   INDEX BY BINARY_INTEGER;
--
--

--
--
END setup$m;
/

Reply via email to