※ ChatGPTを利用し、要約された質問です(原文:初めての、Servlet→JSP)
初めてのServlet→JSP
このQ&Aのポイント
初めてのServletとJSPを使用して、DB検索システムを開発しています。しかし、コンパイル時に定義されていない変数やクラス、パッケージ名のエラーが発生しています。
ServletでDBに接続し、検索を行い、JSPで結果を表示するシステムを作成しています。しかし、コンパイル時にResObjという変数が定義されていないというエラーが出ています。
問題は、ResultSet ResObj = statement.executeQuery(query);という行の定義です。この行の内容では変数が定義されているはずですが、エラーが発生しています。他の場所で変数を定義する必要があるのでしょうか?
今、DB検索Servletを開発しています。
そこで、コンパイル時のエラーについて、いきずまったので少し質問
させてください。
内容は、Servletで、コネクションをDBに接続し、検索。
JSPで表示といった、システムです。
public class goo extends HttpServlet
{
public void init() throws ServletException
{
/* DB接続処理 */
}
public void doPost (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
try{
Statement statement = con.createStatement();
String query ="SELECT * FROM test";
ResultSet ResObj = statement.executeQuery(query);
ResObj.close();
statement.close();
}
catch(Exception ex){
ex.print.StackTrace();
}
try{
req.setAttribute("ResObj",ResObj);
getServletConfig().
getServletContext().
getRequestDispatcher("kekka.jsp");
forward(req,res);
}
catch(Exception ex){
ex.print.StackTrace();
}
}
}
で、コンパイルのエラーが、
定義されてない変数、クラス、またはパッケージ名: ResObj
req.setAttribute("ResObj",ResObj);
^
と、出ます。
定義とは、
ResultSet ResObj = statement.executeQuery(query);
の内容ではないのですか?
それとも、他で定義しないとダメなんですか?
ご指摘、宜しくお願いします。
お礼
大変早い回答ありがとうございました。 勉強不足を恥ずかしく思います・・・。 初歩的な質問で失礼しました。 kgoさん、ありがとうございました。