Re: Stored procedure problem
Re: Stored procedure problem
- Subject: Re: Stored procedure problem
- From: Chuck Hill <email@hidden>
- Date: Mon, 28 Dec 2009 14:33:20 -0800
On Dec 28, 2009, at 1:40 PM, Mark Woollard wrote:
permissions are the issue, the schema table referenced from the
stored procedure didn't have permissions for select. However I now
get:
EvaluateExpression failed: <com.webobjects.jdbcadaptor.MySQLPlugIn
$MySQLExpression: \"{ call find_zips (?)}\" withBindings:
1:\"04103\"(search)>:\n Next exception:SQL State:S1000 -- error
code: 0 -- msg: User does not have access to metadata required to
determine stored procedure parameter types. If rights can not be
granted, configure connection with \"noAccessToProcedureBodies=true
\" to have driver generate parameters that represent INOUT strings
irregardless of actual parameter types.
Anyone help with this?
All I can tell you from this is that adding
"&noAccessToProcedureBodies=true" (without the quotes, I'd think) to
the JDBC URL should work around this. Otherwise consult the MySQL docs.
Chuck
On 28 Dec 2009, at 14:32, Chuck Hill wrote:
When you are working at the command line, you are authenticated as
the same user that you are using for the EOModel? I don't use
MySQL, but that is all that I can think of. The syntax looks OK
and it is complaining that it can't find the SP...
Chuck
On Dec 28, 2009, at 10:11 AM, Mark Woollard wrote:
Yes, and yes - the procedure does reference data in a difference
schema, but the user has access to that and as indicated in my
other follow-up reply it works when called from mysql command line.
Regards
Mark
On 28 Dec 2009, at 12:54, Chuck Hill wrote:
On Dec 28, 2009, at 9:43 AM, Mark Woollard wrote:
Am trying to get rows from a stored procedure, first time I've
tried to do this with WO. I have a stored procedure in the
database (mysql) find_zips which takes a single argument of a
zip code as a varchar. I've created a stored procedure in the
Entity Model FindZIps with a single argument to match the
procedure. I'm using it as follows:
NSArray<NSDictionary> results;
NSDictionary<String,String> args = new
NSDictionary<String,String>(searchString,"search");
results =
EOUtilities.rawRowsForStoredProcedureNamed(ec,"FindZips",args);
I get the following error from the
rawRowsForStoredProcedureNamed method:
EvaluateExpression failed:
<com.webobjects.jdbcadaptor.MySQLPlugIn$MySQLExpression:
\"{ call find_zips (?)}\" withBindings: 1:\"04103\"(search)>:
\n Next exception:SQL State:42000 -- error code: 1305 -- msg:
FUNCTION find_zips does not exist
It seems to me the call being generated is correct and since the
procedure exists (and is being used by non-WO code without
problem) am a bit stuck. I'm probably missing something obvious
as new to WO so anyone got any ideas?
Is it created in the same schema/catalog as the rest of
entities? Does the user you are connecting as have permissions
for this procedure?
Chuck
--
Chuck Hill Senior Consultant / VP Development
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve
specific problems.
http://www.global-village.net/products/practical_webobjects
--
Chuck Hill Senior Consultant / VP Development
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve specific
problems.
http://www.global-village.net/products/practical_webobjects
--
Chuck Hill Senior Consultant / VP Development
Practical WebObjects - for developers who want to increase their
overall knowledge of WebObjects or who are trying to solve specific
problems.
http://www.global-village.net/products/practical_webobjects
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden