这个是什么问题呀!!(jsp调用存储过程的问题)很急!!!百分求助!!!

tomcat 2006-04-19 04:56:47
存储过程如下:


CREATE PROCEDURE login

@usname nvarchar(25)=null,
@uspwd nvarchar(25)=null

AS

select * from usertable
where
usname='@usname' and uspwd='@uspwd'
GO

jsp程序如下:
<%!//处理字符串的一个常用的方法
public String getString(String s)
{
if(s==null)
{
s="";
}
try
{
byte a[]=s.getBytes("ISO-8859-1");
s=new String(a);
}
catch(Exception e)
{
System.out.print(e.getMessage());
}
return s;
}
%>
<%

//获取提交的用户名
String name=request.getParameter("usname");
name=getString(name);
//获取提交的密码
String pwd=request.getParameter("uspwd");
pwd=getString(pwd);

//数据库连接
String sqlServerDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
Connection conn=null;
CallableStatement cs=null;
ResultSet rs=null;
try{
Class.forName(sqlServerDriver);
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydata","sa","");
//调用存储过程
cs = conn.prepareCall("{call login(?,?)}");
cs.setString(1,name);
cs.setString(2,pwd);
rs=cs.executeQuery();
while(rs.next())
{
out.println("连接成功!");
}
}
catch(Exception e)
{
out.println("<p>连接失败,原因:"+e.getMessage()+"</>");
}
finally
{
conn.close();
}
%>
错误提示如下:


HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NullPointerException
org.apache.jsp.login_005fcheck_jsp._jspService(login_005fcheck_jsp.java:131)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.28
...全文
134 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiongbing528 2006-04-19
  • 打赏
  • 举报
回复
CREATE PROCEDURE login

@usname nvarchar(25)=null,
@uspwd nvarchar(25)=null

AS

select * from usertable
where
usname=@usname and uspwd=@uspwd
GO


//////////////
把你存储过程修改下
tomcat 2006-04-19
  • 打赏
  • 举报
回复
现在主要是系统提示的是什么错误,该怎么解决呀
我试了好几个方法都不行呀!!
tomcat 2006-04-19
  • 打赏
  • 举报
回复
我在这个方法中设置过了
public String getString(String s)
{
if(s==null)
{
s="";
}
try
{
byte a[]=s.getBytes("ISO-8859-1");
s=new String(a);
}
catch(Exception e)
{
System.out.print(e.getMessage());
}
return s;
}

hornbilltofy 2006-04-19
  • 打赏
  • 举报
回复
出现空值了,检查fcheck_jsp的131行另外下面的写法也有问题,如果上级链接中没有这两个参数就惨喽!应该判断如果出现空值怎么办?
//获取提交的用户名
String name=request.getParameter("usname");
name=getString(name);
//获取提交的密码
String pwd=request.getParameter("uspwd");
pwd=getString(pwd);
tomcat 2006-04-19
  • 打赏
  • 举报
回复
我的配置是tomcat5.0+sqlsever2000 sp4
huxinsheng168 2006-04-19
  • 打赏
  • 举报
回复
这样的错误谁看得懂?你的示例就这一点点?其他页面呢?你的配置呢?

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧