Моя цель — запустить php на сервере glassfish. Я установил Quercus и развернул его как приложение в glassfish в (C: \ glassfish4 \ glassfish \ domains \ domain1 \ Applications \ Quercus).
Сейчас я пытаюсь подключиться к MySQL. Сервер mysql работает и соединение проверяется с помощью команды (mysql -u root -p).
Следующий test.php создан:
<?php
$servername="localhost";
$username="root";
$password="whatever";
$conn = new mysqli($servername, $username, $password);
if (!$conn) {
die("Failed : " . mysqli.connect_error());
}
echo "Connection Successful!";
?>
Запуск test.php выдает следующее сообщение:
Warning: A link to the server could not be established.
url=jdbc:mysql://localhost/?
jdbcCompliantTruncation=false&characterSetResults=ISO885_1&characterEncoding=ISO8859_1&userServerPrepStmts=true
driver=com.mysql.jdbc.Driver com.caucho.quercus.QuercusModuleException:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
Connection Successful!
Из сообщения, вероятно, что драйвер mysql jdbc не установлен.
Я добавил драйвер в C: \ glassfish4 \ glassfish \ domains \ domain1 \ lib \ mysql-connector-java-8.0.11 \ mysql-connectior-java-8.0.11.jar. Я не уверен, как добавить его из консоли администратора Glassfish. Он не отображается в разделе jdbc> пул соединений.
2-е РЕДАКТИРОВАНИЕ (на основе комментариев):
Файлы jar также перемещаются в … \ domain1 \ lib и … \ glassfish \ lib. Был выполнен полный перезапуск системы.
Чтобы добавить пул соединений, я следовал инструкциям по следующей ссылке:
https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-glassfish-config.html
Затем я получаю следующее сообщение об ошибке:
HTTP Status 500 - Internal Server Error:
type Exception report
message Internal Server Error
description The server encountered an internal error that prevented it from fulfilling this request.
exception java.lang.IllegalStateException: getoutputStream() has already been called for this response.
...
Задача ещё не решена.
Других решений пока нет …