Java-сервлет App Engine не подключается к облачному SQL

Я создал веб-сервлет Java, используя механизм приложений, сервлет делает запросы к базе данных. Я протестировал сервлет локально, используя локальную базу данных, и он отлично работал, затем я приступил к тестированию сервлета локально, но получил доступ к базе данных Cloud SQL, что также отлично работало.

Моя проблема возникает после развертывания сервлета. После развертывания все запросы к базе данных возвращают следующее:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not 
received any packets from the server.

Я проверил в облачной консоли, и мое приложение было правильно добавлено в облачные приложения SQL Authorized App Engine на вкладке Контроль доступа.

У кого-нибудь были подобные проблемы с развернутыми сервлетами движка приложений? Какие-нибудь решения или советы там? Буду признателен за любую помощь!

ОБНОВИТЬ:

Вышеуказанная ошибка была сгенерирована с использованием следующего кода для доступа к БД

Class.forName("com.mysql.jdbc.Driver");
Url = "jdbc:mysql://<ip-address-cloudsql>:3306/<dbname>";
Connection con = DriverManager.getConnection (Url,"root",<password>);

та же ошибка была получена с использованием этого кода, обратите внимание, что он очень похож на код, показанный в примере здесьhttps://developers.google.com/appengine/docs/java/cloud-sql/

Class.forName("com.mysql.jdbc.GoogleDriver");
Url = "jdbc:google:mysql://<appID:instanceID>/<dbname>? 
user=root&password=<password>";
Connection con = DriverManager.getConnection (Url);

Я следовал советам по форматированию, показанным в этом сообщении stackoverflow, когда дело дошло до установки URL с помощью appid и экземпляра id:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:

Использование этого кода привело к следующей ошибке:

java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

Я предполагаю, что это говорит localhost, потому что моя база данных cloudql настроена на слежение за сервлетом движка приложения. Также знайте, что оба эти метода работали нормально при локальном запуске сервлета и доступе к облачной базе данных SQL.

есть идеи? я не знаю что еще попробовать: [

Ответы на вопрос(5)

Ваш ответ на вопрос