Я пытаюсь использовать тот же пул соединений с моей базой данных из инициированного намерения веб-перехватчика. Я использую базовый шаблон (https://github.com/actions-on-google/dialogflow-webhook-boilerplate-java).
Каждое сработавшее намерение действительно возвращает мне ActionRequest
, однако оно не содержит ServletContext
. Итак, как мне получить нормальный контекст запроса с помощью библиотеки actions-on-google-java
? (https://github.com/actions-on-google/actions-on-google-java/blob/master/src/main/kotlin/com/google/actions/api/ActionRequest.kt)
Я пытался найти альтернативные способы получения пула, но мой опыт работы с Java ограничен.
// this is what i would like to achieve but ActionRequest is limited
@ForIntent("DB test")
public ActionResponse DbTest(ActionRequest request)
{
...
DataSource pool = (DataSource) request.getServletContext().getAttribute("my-pool");
try (Connection conn = pool.getConnection())
{
// do database stuff
}
...
}