Wrox Home  
Search P2P Archive for: Go

  Return to Index  

servlets thread: Problems with calling stored Procedure..


Message #1 by "Shashank Arora" <niceguyleo@i...> on Tue, 17 Sep 2002 07:08:37
Hi :)

i have developed an application using servlets and have SQLServer 2000 as 
my database, and the Web server i am using is Tomcat 4.0.4.
The problem i ma having is that i have used some Stored procedures and in 
one such procedure which is having nvarchar(n) datatype as the parameter 
and when i am calling this stored proceudure in my Servlet code using the 
Callable Statement wherein i am passing  a String type variable for the 
Stored Procedure which i feel is compatible with the nvarchar(n) data type 
of the SQL. But when i am calling the stored procedure with the String tpe 
variable as parameter the Tomcat shows an error as 

^error : java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]Invalid 
character value for cast specification

so it is essentially showing an error converting the String type to 
nvarchar(n). and i really donn't know any other datatype in Java that is 
comatible with nvarchar(n).  and so how do i execute my stored procedure 
thru my servlets.??

I am sendin the procedure as well as the servlet code that i m usind to 
call it..


PROCEDURE STARTS HERE........


CREATE PROCEDURE  getMachineDetails @relocationNo varchar(30)  AS SELECT  
* FROM    ITEM_ISSUED_DETAILS where s_no=(select s_no from 
ITEM_ISSUED_DETAILS_HISTORY
WHERE     (relocation_no = @relocationNo) AND (date_of_relocation = 
(SELECT  MAX(date_of_relocation)  FROM ITEM_ISSUED_DETAILS_HISTORY
WHERE     (relocation_no = @relocationNo))))

ENDS HERE...................



SERVLET CODE STARTS HERE......


String machineID="somevalue";

CallableStatement cstmt=con.prepareCall("{call getMachineDetails(?)}");
						
cstmt.setString(1,machineID);// Error comes here
			
rs=cstmt.executeQuery();


ENDS HERE...................



If somebody can help me out in this regard, i'll really be so much 
greatful.

Thanks
Shashank :)

  Return to Index