Hello!
I'm trying to fix an appliaction created using ColdFusion MX and Oracle 9i. The application worked fine until our IT department reinstalled the oracle server. As far as I've been able to see.
The CF application calls to a stored procedure in a package on the Oracle server. However, when the CF application attempts invoce the stored procedure, I get the following error message:
PLS-00306 wrong number or types of arguments in call to 'string'
We haven't changed anything in either the stored procedures or the application. Anyone have any ideas as to what the problem might be? I've included the procedures and the relevant CF code below.
(The application is available at http://nordbotten.ifi.uib.no/VirtualMuseum/Prototypes/Osdal3/index.cfm)
----
(PACKAGE BODY VTX)
PROCEDURE proc_vtx_search(
url IN VARCHAR2,
filename IN VARCHAR2,
shape IN VARCHAR2,
color IN VARCHAR2,
texture IN VARCHAR2,
spatial IN VARCHAR2,
threshold IN VARCHAR2,
images OUT typ_vtx_result)
AS
-- declarations
result VARCHAR2(1000) := NULL;
seed_number NUMBER := 1;
weights VARCHAR2(1000);
results_null EXCEPTION;
no_insert EXCEPTION;
BEGIN
test_insert_seed(url, filename, seed_number);
IF seed_number = -1 THEN
RAISE no_insert;
END IF;
weights := 'color = "'||color||'" texture = "'||texture||'" shape = "'||shape||'" location = "'||spatial||'"';
result := vtx_fct_search(seed_number, weights, threshold);
IF result IS NULL THEN
RAISE results_null;
END IF;
OPEN images FOR SELECT result AS images FROM dual;
EXCEPTION
WHEN results_null THEN
result := '-1';
WHEN no_insert THEN
result := '-2';
WHEN OTHERS THEN
result := '-3';
END proc_vtx_search;
END vtx;
---------
Relevant Coldfusion code:
<cfstoredproc datasource="#Application.db_odbc#" procedure="vtx.proc_vtx_search" returncode="no">
<cfprocparam type="in" value="#Application.server_address##Application.up loads_path#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#Session.image#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#shape#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#color#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#texture#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#spatial_structure#" cfsqltype="cf_sql_varchar">
<cfprocparam type="in" value="#threshold#" cfsqltype="cf_sql_numeric">
<cfprocresult name="images_result">
</cfstoredproc>