Подключение к mysql в Glassfish

Моя цель - запустить 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.
...

person mtleis    schedule 10.06.2018    source источник
comment
Возможный дубликат Где добавить драйвер jdbc на Netbeans/Glassfish в Windows?   -  person fvu    schedule 10.06.2018
comment
вопрос отредактирован после попытки добавить файл jar. Мне все еще не удалось настроить его в консоли администратора.   -  person mtleis    schedule 10.06.2018
comment
Пулы соединений не просто появляются/настраиваются автоматически, вы должны настраивать их для каждого соединения. Это хорошо объяснено в документах Glassfish.   -  person fvu    schedule 10.06.2018
comment
Я бы поместил драйвер jdbc либо в C:\glassfish4\glassfish\domains\domain1\lib (как библиотеку домена), либо в C:\glassfish4\glassfish\lib (как глобальную библиотеку). У меня нет опыта работы с драйвером mysqli Quercus, но я только что просмотрел реализацию, я не думаю, что вам нужно настраивать ресурсы jdbc в GF, чтобы он работал. Итак, если драйвер находится в правильном месте, он должен работать.   -  person fvu    schedule 10.06.2018
comment
Это сработало! Достаточно было разместить драйвер на его месте! (не могли бы вы переместить свой комментарий в качестве ответа).   -  person mtleis    schedule 11.06.2018
comment
Ну, я уже пометил ваш вопрос как дубликат, потому что мой комментарий — это лишь немного более явная версия того, что говорит ответ на другой вопрос (адаптированный к вашему фактическому установочному каталогу). Поэтому я не думаю, что было бы уместно добровольно создавать дублирующие вопросы и ответы :) Моя цель состояла в том, чтобы заставить вас двигаться, и мне это удалось, этого должно быть достаточно :)   -  person fvu    schedule 11.06.2018