After experiencing something similar, I read somewhere
that CallableStatement's shouldn't be used pre-8.0. I
think someone posted on a message board or something.
I changed all my java code to call my functions as
PreparedStatements:
ps = con.prepareStatement("select myFunction(?,?)")
ps.setBoolean(1, true);
ps.setInt(2, 198);
etc.
And it worked fine from there on.
--- fake@dusk.homelinux.org wrote:
> And now that I think of it, I'm useing postgres 7.4
>
> Not sure how relevant that is,
>
> Gary
>
>
> On Wed, Mar 30, 2005 at 01:16:47AM -0800,
> fake@dusk.homelinux.org wrote:
> > When executing the following statments from
> netbeans 4.1 sun app server 8.1
> >
> > CallableStatement proc = con.prepareCall("{ ? =
> call test_function ( ? ) }");
> > proc.registerOutParameter(1, Types.BOOLEAN);
> > proc.setString(2, "testthis");
> > proc.execute();
> >
> > This shows up in my server log.
> >
> > LOG: statement: select * from test_function (
> 'thisTest' ) as result;
> > ERROR: function test_function("unknown") does not
> exist
> > HINT: No function matches the given name and
> argument types. You may need to add explicit type
> casts.
> >
> >
> > And I get an exception from my app server that
> states "No function" etc, etc...
> >
> > Now, if I cut and paste that into my psql
> terminal it appears to work... So I'm really curious
> as to why it doesn't work through jdbc...
> >
> > Couple of things: I'm getting my connection
> through a connection pool on my app server and that
> appears to be in working order...
> >
> > Any suggestions?
> >
> >
> > Gary Lucas
> >
> > ---------------------------(end of
> broadcast)---------------------------
> > TIP 8: explain analyze is your friend
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
>