LoginServletで処理されるユーザ名&のパスワードを含むjspファイル。このサーブレットはAccess dbの検証を行います。ユーザ名&パスワードがflat_status.jspし、アクセスデシベルページのリダイレクトと一致した場合はイム取得中にエラーがサーブレット内のデータベースAccess
はここ
package Validate;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet{
@Override
public void init(ServletConfig config) throws ServletException
{
super.init(config);
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch (Exception ex)
{
System.out.println("Initialize connector string");
}
}
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
Connection conn;
Statement st;
ResultSet rs;
PrintWriter pw = response.getWriter();
String userName = request.getParameter("username");
String password = request.getParameter("password");
HttpSession session = request.getSession(true);
response.setContentType("text/html");
try
{
conn=DriverManager.getConnection("jdbc:odbc:FBS");
st=conn.createStatement();
rs=st.executeQuery("select UserName,Password from user_login where UserName='"+userName+"' and Password='"+password+"'");
while(rs.next())
{
session.setAttribute("USerName",userName);
RequestDispatcher dispatch=request.getRequestDispatcher("/flat_status.jsp");
dispatch.forward(request, response);
}
st.close();
rs.close();
conn.close();
}
catch (SQLException ex)
{
pw.println(ex);
}
}
}
は例外イムは、ブラウザできます。..私を助けるany1することができますウィンドウ
java.sql.SQLException:[Microsoft] [ODBC Microsoft Access Driver]条件式のデータ型の不一致。
LoginServletの58行目はどれですか?私が推測しているのは、out.println(ex.getMessage()); 'という行は、あなたがoutに書き込むので、nullに初期化されているからです。 –
@ ^^ ...それは何の解決策ですか?私がPrintWriterを削除し、System.out.println(ex.getMessage())を使用したとき。送信ボタンをクリックすると空のサーブレットページが表示されます – Shaggy
例外があるため、空のページが表示されます。空のページを必要としない場合は、応答ライターにエラーメッセージを出力します。 –