I'm using Pages and I call stored procedures in Oracle by putting the call to the procedure in an Invoked Business Object and invoking that object from my Page. The Invoked Business Object would Look something like the following code.
[tt]Hashtable hshParams = (Hashtable) evt.getParameter();
CallableStatement cstmt = null;
PreparedStatement stmt = null;
Connection con = null;
try
{
AgiDatabase dbObject = evt.getDatabase();
con = dbObject.getConnection(true);
stmt = con.prepareStatement("CALL
SCHEMA.PACKAGE.FUNCTION(?, ?)"

;
stmt.setString(1, (String) hshParams.get("param1"

);
stmt.setString(2, (String) hshParams.get("param2"

);
stmt.executeUpdate();
}
catch (Exception e)
{
evt.setResult(e.toString());
System.err.println(e.toString());
}
finally
{
stmt.close();
con.close();
return;
}[/tt]
Tone