Я использую среду веб-редактора Xtext, и у меня возникла проблема с кодом, выполняемым до выполнения его предварительных условий.Например, когда я обновляю свой документ, он вызывает метод XtextServlet
doService
.Я переклассифицировал класс XtextServlet
и переопределил метод doService
следующим образом:
override doService(XtextServiceDispatcher.ServiceDescriptor service, HttpServletResponse response) {
super.doService(service, response)
switch (service.context.getParameter("serviceType")) {
case "update": {
// Execute other code
}
}
Этот другой код, который я использую, зависит от обновленного документа.Но я обнаружил, что иногда документ не обновляется до запуска моего кода.Я предполагаю, что эти сервисы крутятся в своих потокахУ меня вопрос, есть ли способ запустить мой код в результате фактического завершения службы или мне нужно полностью переопределить службу обновления для вызова моего кода?
РЕДАКТИРОВАТЬ: Чтобы уточнить мой вопрос,где я вызываю super.doService(service, response)
, это выполняет редактирование документа.Где у меня есть мой комментарий // Execute other code
Я пытаюсь запустить какой-то другой побочный эффект для сервиса.Этот другой код полагается на завершение метода doService
, но doService
запускает асинхронную задачу, которая не завершается до того, как мой другой код выполнит