Недавно мы преобразовали наше приложение с сервлета 2.5 на сервлет 3.0, чтобы мы могли использовать динамическую конфигурацию сервлета.
Мы используем SpringServletContainerInitializer Spring для инициализации нашего приложения соответствующим экземпляром WebApplicationInitializer, который находится в нашем коде. Этот подход работает в Tomcat, но при развертывании в Websphere 8.5.0.1 SpringServletContainerInitializer не может найти реализацию интерфейса WebApplicationInitializer в нашем коде, поэтому наш сервлет-диспетчер Spring MVC не создается.
Мы обнаружили в Интернете одно сообщение в блоге, автор которого мог не заставить его работать.
Мы пытались возиться с загрузчиком классов, порядками загрузки классов и проверять, что сервлет 3.0 работает в контейнере другими способами, и, похоже, с этим все в порядке. Используя средство просмотра загрузчика классов WAS, мы видим, что загружаются класс SpringServletContainerInitializer и интерфейс WebApplicationInitializer, но не наша реализация WebApplicationInitializer.
Кто-нибудь пробовал это в Websphere? Мы думаем, что это может быть проблема с загрузчиком классов, но в конечном итоге ничего не знаем.