Can you add a new stored procedure that uses your current one? It
would operate like the DIH expects.

I don't remember if DB cursors are a standard part of JDBC. If they
are, it would be a great addition to the DIH if they work right.

On Thu, May 31, 2012 at 10:44 AM, Niran Fajemisin <afa...@yahoo.com> wrote:
> Thanks for your response, Michael. Unfortunately changing the stored 
> procedure is not really an option here.
>
> From what I'm seeing, it would appear that there's really no way of somehow 
> instructing the Data Import Handler to get a handle on the output parameter 
> from the stored procedure. It's a bit surprising though that no one has ran 
> into this scenario but I suppose most people just work around it.
>
> Anyone else care to shed some more light on alternative approaches? Thanks 
> again.
>
>
>
>>________________________________
>> From: Michael Della Bitta <michael.della.bi...@appinions.com>
>>To: solr-user@lucene.apache.org
>>Sent: Thursday, May 31, 2012 9:40 AM
>>Subject: Re: Using Data Import Handler to invoke a stored procedure with 
>>output (cursor) parameter
>>
>>I could be wrong about this, but Oracle has a table() function that I
>>believe turns the output of a function as a table. So possibly you
>>could wrap your procedure in a function that returns the cursor, or
>>convert the procedure to a function.
>>
>>Michael Della Bitta
>>
>>------------------------------------------------
>>Appinions, Inc. -- Where Influence Isn’t a Game.
>>http://www.appinions.com
>>
>>
>>On Thu, May 31, 2012 at 8:00 AM, Niran Fajemisin <afa...@yahoo.com> wrote:
>>> Hi all,
>>>
>>> I've seen a few questions asked around invoking stored procedures from 
>>> within Data Import Handler but none of them seem to indicate what type of 
>>> output parameters were being used.
>>>
>>> I have a stored procedure created in Oracle database that takes a couple 
>>> input parameters and has an output parameter that is a reference cursor. 
>>> The cursor is expected to be used as a way of iterating through the 
>>> returned table rows. I'm using the following format to invoke my stored 
>>> procedure in the Data Import Handler's data config XML:
>>>
>>> <entity name="entity_name" ... query="{call my_stored_proc(inParam1, 
>>> inParam2)}"> ...</entity>
>>>
>>> I have tested that this query works prior to attempting to use it from 
>>> within the DIH. But when I attempt to invoke this stored procedure, it 
>>> naturally complains that the output parameter is not specified (essentially 
>>> a mismatch in the number of parameters).
>>>
>>> I don't know of anyway to pass in a cursor parameter (or any output 
>>> parameter for that matter) to the stored procedure invocation from within 
>>> the <entity> definition.  I would greatly appreciate if anyone could 
>>> provide any pointers or hints on how to proceed.
>>>
>>> Thanks so much for your time
>>>
>>
>>
>>



-- 
Lance Norskog
goks...@gmail.com

Reply via email to