前提・実現したいこと
XAMPPとEclipseを開発環境に、JSPを用いて問い合わせフォーム作成を行っています。
Java、HTML、CSS、MySQLを学習した後、スキルアップのために簡易的に作成しているものです。
現在JSPにてMySQLの接続を行っているのですが、うまく接続することができません。
プロジェクト名は「QuiryForm」(誤字してますが無視してください)、DB名は「toiawase」、接続したいテーブル名は「query」です。
発生している問題・エラーメッセージ
HTTPステータス 500 - An exception occurred processing JSP page /input.jsp at line 13 type 例外レポート メッセージ An exception occurred processing JSP page /input.jsp at line 13 説明 The server encountered an internal error that prevented it from fulfilling this request. 例外 org.apache.jasper.JasperException: An exception occurred processing JSP page /input.jsp at line 13 10: <% 11: Context context = new InitialContext(); 12: DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/toiawase"); 13: Connection db = ds.getConnection(); 14: db.close(); 15: %> 16: <!-- Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 原因 javax.servlet.ServletException: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.git.mm.mysql.Driver' org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:916) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:845) org.apache.jsp.input_jsp._jspService(input_jsp.java:225) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 原因 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.git.mm.mysql.Driver' org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1429) org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) org.apache.jsp.input_jsp._jspService(input_jsp.java:77) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 原因 java.lang.ClassNotFoundException: org.git.mm.mysql.Driver org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420) org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371) org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044) org.apache.jsp.input_jsp._jspService(input_jsp.java:77) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
該当のソースコード
JSP
1<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" 2 import="java.sql.*, javax.naming.*, javax.sql.*" %> 3<!DOCTYPE html> 4<html> 5<head> 6<meta charset="UTF-8" /> 7<title>お問い合わせ記入|お問い合わせ|研修課題1.フォームの作成</title> 8</head> 9<body> 10 <% 11 Context context = new InitialContext(); 12 DataSource ds = (DataSource)context.lookup("java:comp/env/jdbc/toiawase"); 13 Connection db = ds.getConnection(); 14 db.close(); 15 %> 16</body> 17</html>
試したこと
コードの間違いがないかなど探したのですが、見当たりませんでした。
そのことから予想としてはEclipseやMySQL、XAMPPなどコード以外の問題かと思い、その中でもcontext.xmlが怪しいのではないかと色々と教本を見ながらいじってみたのですが、どれもうまくいきませんでした。
xml
1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 Licensed to the Apache Software Foundation (ASF) under one or more 4 contributor license agreements. See the NOTICE file distributed with 5 this work for additional information regarding copyright ownership. 6 The ASF licenses this file to You under the Apache License, Version 2.0 7 (the "License"); you may not use this file except in compliance with 8 the License. You may obtain a copy of the License at 9 10 http://www.apache.org/licenses/LICENSE-2.0 11 12 Unless required by applicable law or agreed to in writing, software 13 distributed under the License is distributed on an "AS IS" BASIS, 14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 See the License for the specific language governing permissions and 16 limitations under the License. 17--><!-- The contents of this file will be loaded for each web application --><Context> 18 19 <!-- Default set of monitored resources --> 20 <WatchedResource>WEB-INF/web.xml</WatchedResource> 21 22 <!-- Uncomment this to disable session persistence across Tomcat restarts --> 23 <!-- 24 <Manager pathname="" /> 25 --> 26 27 <!-- Uncomment this to enable Comet connection tacking (provides events 28 on session expiration as well as webapp lifecycle) --> 29 <!-- 30 <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" /> 31 --> 32 33 <Resource name="jdbc/toiawase" auth="Container" type="javax.sql.DataSource" userName="user1" password="user1" driverClassName="org.git.mm.mysql.Driver" url="jdbc:mysql://localhost/toiawase" maxActive="4" maxWait="5000" maxIdle="2" validationQuery="SELECT count(*) FROM query" /> 34 35</Context>
補足情報(FW/ツールのバージョンなど)
XAMPP 7.2.3 (Apache 2.4.29 MariaDB 10.1.31 Tomcat 7.0)
Eclipse Oxygen
JDK 1.8.0-162
Java 8
回答1件
あなたの回答
tips
プレビュー