私はJavaの初心者です。 データベースの値とユーザーが入力した値を比較しています。 JSPファイルは正常に動作しますが、送信ボタンをクリックすると、サーブレットへのPOST要求は空白のページを返します。警告ボックスは表示されません。同じパターンで別のプロジェクトに書かれたサーブレットがもう1つあり、それは完璧に動作します。 Eclipse 7、Tomcat 7、MySQLデータベースを使用しています。何が間違っているのか分かりません。前もって感謝します。続き私はEclipse IDEを使用しています。 jspコードは実行されますが、サーブレットは空白のページを返します
は、サーブレットコード
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String DB_URL="jdbc:mysql://localhost/Demo";
String USER = "root";
String PASS = "root";
String Id=request.getParameter("e1");
int id = Integer.parseInt(Id);
String pos=request.getParameter("p1");
String pr1=request.getParameter("e1");
int pri = Integer.parseInt(pr1);
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try{ Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
PreparedStatement ps=conn.prepareStatement("select * from users where id=?");
ps.setInt(1, id);
ResultSet rs=ps.executeQuery();
while(rs.next()){
int eid = rs.getInt("id");
String post = rs.getString("position");
int pr = rs.getInt("priority");
if(id==eid)
{
if((pos.equals(post))&&(pri==pr))
{
out.print("<html><head>");
out.print("<script type=\"text/javascript\">alert(" + "Details Authenticated" + ");</script>");
out.print("</head><body></body></html>");
}
}
}
rs.close();
conn.close();
}
私のJSPファイル....このJSPファイル要求POSTサービスです。送信ボタンをクリックするとブローカーURLがhttp://localhost:8080/Demo2/responseと表示されます。
<form method="POST" action="miniProj">
<h1>Valid User</h1>
<b>Enter details to sign the message</b><br>
Employee Id:<input type=text name=e1><br>
Employee Post:<input type=text name=p1><br>
Employee Priority:<input type=text name=pr1><br>
<input type=submit value="submit" />
<input type=button value="exit" />
</form>
Deployement記述子ファイルweb.xml。これは、(別名、パッケージ名を含める)> WEB_INF
<web-app>
<servlet>
<servlet-name>compLogin</servlet-name>
<servlet-class>miniProj</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>compLogin</servlet-name>
<url-pattern>/miniProj</url-pattern>
</servlet-mapping>
</web-app>
すべての関連コードをポストする... id変数はどこから来ますか?サーブレット名をレスポンスとは異なるものに変更してください...レスポンスオブジェクトと衝突する可能性があります –
リクエストがtomcatに届いていますか(私はtomcatがapache/nginxの背後にないと仮定しています)?ブラウザの開発バーに表示されるHTTPレスポンスはどれですか?それは "サーブレットへのリダイレクト"ではない方法で、これはPOSTリクエストです。 – reallynice
@AngeloOparah私は上記のコードを編集しました。名前をminiProjに変更しました。それでもなお同じ問題が残る。ありがとう –