HTTP状态500 - 在第6行处理JSP页面/webtech/login.jsp时发生异常

时间:2014-04-09 08:09:42

标签: html mysql jsp tomcat

它基本上是一个检查登录名和密码的简单项目......

我做了所有可能的事情来弄清楚错误...但我无法以某种方式克服它...任何人都可以帮助并为我提供解决方案。

我有一个html文件名 Login.html 和一个名为 login.jsp

的jsp文件

mysql端口没有。 3306 ,用户名和密码 sait

我的tomcat端口没有。 8801

的login.html

<html>
<head></head>
<body>
<form action="login.jsp" method="post">
User name :<input type="text" name="usr" />
password :<input type="password" name="pwd" />
<input type="submit" />
</form>
</body>
</html>

的login.jsp

<%@ page import ="java.sql.*" %>
<%@ page import ="javax.sql.*" %>
<%
String userid=request.getParameter("usr"); 
String pswd=request.getParameter("pwd"); 
Class.forName("com.mysql.jdbc.Driver"); 
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sait","root","root"); 
Statement st= con.createStatement(); 
ResultSet rs=st.executeQuery("select * from login where username='"+userid+"'"); 
if(rs.next()) 
{ 
if(rs.getString("password").equals(pswd)) 
{ 
out.println("welcome"+userid); 

} 
else 
{ 
out.println("Invalid password try again"); 
} 
} 
%>

我在 C:\ program files \ apache software foundation \ tomcat 7.0 \ webapps \ ROOT \ webtech **中创建了一个文件夹 并放置了这两个文件** \ webetech \ Login.html \ webtech \ login.jsp

我打开了mysql并创建了一个名为“sait”的数据库..然后使用命令“use sait”将数据库更改为“sait”在mysql中。

然后我执行了以下代码

mysql>create table login(username varchar(10),password varchar(10));
>insert into login values("sait","sait");
>select * from login;

全部成功执行..

然后我将 mysql-connector-java-5.1.26-bin 放在d目的地 C:\ program files \ apache software foundation \ tomcat 7.0 \ lib \ mysql-connector-java -5.1.26-bin.jar

现在,如果我去

 http://localhost:8081/webtech/Login.html

我得到登录页面 ..但是在我提交之后我得到 HTTP状态500 - 在第6行处理JSP页面/webtech/login.jsp时发生异常 < / p>

Plssss帮助

1 个答案:

答案 0 :(得分:0)

我猜你可能得到NullpointerException。所以只需打印

的值
String userid=request.getParameter("usr"); 
String pswd=request.getParameter("pwd"); 
out.print(userid + "" + pswd);

并检查出来。 在jsp页面中使用java代码也非常失望。尝试使用servlet建立JDBC

您还应该添加try/catch阻止您的代码以捕获任何异常,如果抛出,

<%@ page import ="java.sql.*" %>
<%@ page import ="javax.sql.*" %>
<%
String userid=request.getParameter("usr"); 
String pswd=request.getParameter("pwd");
out.print(userid + "" + pswd); 
try
{
Class.forName("com.mysql.jdbc.Driver"); 
java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sait","root","root"); 
Statement st= con.createStatement(); 
ResultSet rs=st.executeQuery("select * from login where username='"+userid+"'"); 
while(rs.next()) 
{ 
if(rs.getString("password").equals(pswd)) 
{ 
out.println("welcome"+userid);
} 
else 
{ 
out.println("Invalid password try again"); 
} 
}}
catch(Exception e) 
{
out.print("Exception is " + e);
}
%>

如果这没有解决您的问题。请将您获得的例外情况发给我们

希望这会有所帮助!!