2015-08-17 2 views
0

Как я могу быть уверенным, что web.xml в веб-приложении загружается перед любыми Spring WebApplicationInitializer классами?Принудительная загрузка web.xml до Spring WebApplicationInitializer классы

С Javadoc из WebApplicationInitializer:

WEB-INF/web.xml и WebApplicationInitializer использования не являются взаимоисключающими эксклюзив; например, web.xml может зарегистрировать один сервлет, а WebApplicationInitializer может зарегистрировать другой. Инициализатор может даже изменять регистрацию, выполняемые в web.xml с помощью таких методов, как ServletContext.getServletRegistration (String) ...

Итак, в соответствии с этим я мог бы предположить, что web.xml загружается перед любыми WebApplicationInitializer классов. Этого я не заметил.

я обеспечиваю реализацию WebApplicationInitializer и то, что я хочу сделать в коде заключается в следующем, так что если сервлет уже зарегистрирован в файле web.xml тогда я не пытаться зарегистрировать его для второй раз:

@Override 
public void onStartup(ServletContext servletContext) { 

    if(servletContext.getServletRegistration(MY_SERVLET_NAME) == null) { 
     // Servlet not already registered in web.xml so register it now 
     servletContext.addServlet(..etc) 
    } 
} 

ответ

0

Моя ошибка. Моя ошибка if была ошибочной, и мне показалось, что после этого web.xml был загружен. Для справки я оставлю вопрос, но заказ выглядит как web.xml, а затем все классы WebApplicationInitializer.

Смежные вопросы