Я использую Tomcat версии 8 и разъем MySQL версии 6. Вот мой context.xml:java.sql.SQLException: Невозможно создать PoolableConnectionFactory (требуется CLIENT_PLUGIN_AUTH)
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Resource auth="Container"
driverClassName="com.mysql.cj.jdbc.Driver"
maxActive="20"
maxIdle="10"
maxWait="-1"
name="jdbc/MyConn"
username="root"
password="mypassword"
type="javax.sql.DataSource"
url="jdbc:mysql://localhost:3306/training_db"
/>
Это класс я использую для DB.
public class DBConnection {
public static Connection getConnection() throws Exception{
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
DataSource ds = (DataSource)envContext.lookup("jdbc/MyConn");
Connection conn = ds.getConnection();
System.out.println("dbConLookp():: Data Source Connection is called."+ds.getLogWriter());
return conn;
}
}
Это то, что у меня есть для подключения к базе данных и вставки.
try{
DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
Connection con = DBConnection.getConnection();
PreparedStatement st = con.prepareStatement("INSERT INTO EMPLOYEE (ID,FIRSTNAME,LASTNAME,MIDDLENAME,PHONENUMBER,EMAILID,ADDRESS,USERPASS) VALUES (?,?,?,?,?,?,?)");
st.setInt(1, Integer.parseInt(request.getParameter("id")));
st.setString(2, firstName);
st.setString(3, lastName);
st.setString(4, middleName);
st.setString(5, phoneNumber);
st.setString(6, emailId);
st.setString(7, address);
st.setString(8, password);
boolean rs = st.execute();
if (!rs) {
System.out.println("Record "+request.getParameter("id")+" is inserted successfully.");
} else {
System.out.println("Record is insertion is failed.");
}
st.close();
con.close();
}
catch(Exception e){
System.out.println("Exception caught:" + e);
}
На странице Регистрация, когда я нажимаю зарегистрироваться, я получаю java.sql.SQLException: Невозможно создать PoolableConnectionFactory (требуется CLIENT_PLUGIN_AUTH) исключение. Я попытался изменить localhost на 127.0.0.1, но это не сработало. Я также проверял разрешения MySQL, и они выглядят отлично. Я попытался создать другого пользователя, но он не сработал. Я попытался переместить создание другого context.xml в папку WEB-INF, но не повезло. Я не знаю, что еще я могу сделать. Любая помощь приветствуется.