Недавно я узнал, как регистрировать произвольные артефакты grails (мне это нужно для динамических контроллеров в моем приложении), используя grailsApplication.addArtefact (java.lang.String artefactType, GrailsClass artefactGrailsClass), и он отлично работает, но теперь я понял, что я также хочу иметь возможность отменить их регистрацию.Программное удаление артефакта грааля из контекста приложения
К сожалению, интерфейс GrailsApplication не дает четкого способа сделать это, и кажется, что отмена регистрации нежелательных динамически зарегистрированных артефактов Грааля может быть выполнена только путем перезапуска всего приложения.
Возможно, мне что-то не хватает, и артефакт можно удалить из приложения без перезапуска приложения?
Спасибо
Я пытаюсь реализовать первый подход, собирая все артефакты из 'grailsApplication.getAllArtefacts()', затем вызывая 'rebuild', а затем добавляя каждый собранный артефакт с помощью' addArtefact'. К сожалению, это как-то ломается с фильтром безопасности apache siro, и мое приложение не работает с 'javax.servlet.ServletException: Отфильтрованный запрос не выполнен. \t at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal (AbstractShiroFilter.java:384) ' –