質問: request.getSession(); session.setAttribute("LoginResult", LoginResult); session.setAttribute("admin", ad); this.getServletContext().getRequestDispatcher("/a.jsp") .forward(request, response); } else { request.setAttribute("errorMessage", "ユーザ名またはパスワードが違います"); this.getServletContext().getRequestDispatcher("/Login.jsp") .forward(request, response); } } catch (Exception e) { request.setAttribute("errorMessage", "システムエラーが発生しました。"); <===ここが表示される this.getServletContext().getRequestDispatcher("/Login.jsp") .forward(request, response); throw new ServletException(e); } finally { try { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (con != null) { con.close(); } } catch (Exception e) { } } } } } ### 試したこと context.xmlを色々弄ったが効果なし。 もう一度サイトを見ながらjdbcをもう一度入れたが 同じエラーが出てしまう。
回答: Context#lookUpを使うということは、サーバにjdbc/Libraryという名前でDataSourceが登録されている必要があります。使っているサーバ(TomcatとかGlassFishとか)、及びデータベース(MySQLとかPostgreSQLとか)に応じて登録方法が違うので、調べてみてください。 追記 == Tomcat、MySQLならここを参考にどうぞ