code: @Bean
  	public ServletRegistrationBean<FacesServlet> facesServletRegistrationBean(
  			FacesServletProperties facesServletProperties
  	) {
  		ServletRegistrationBean<FacesServlet> facesServletServletRegistrationBean = new ServletRegistrationBean<FacesServlet>(new FacesServlet()) {
  			@Override
  			protected ServletRegistration.Dynamic addRegistration(String description, ServletContext servletContext) {
  				ServletRegistration.Dynamic servletRegistration = super.addRegistration(description, servletContext);
  				if (servletRegistration != null) {
  					servletContext.setAttribute("org.apache.myfaces.DYNAMICALLY_ADDED_FACES_SERVLET", true);
  					servletContext.setAttribute("com.sun.faces.facesInitializerMappingsAdded", true);
  				}
  				return servletRegistration;
  			}
  		};
  
  		facesServletServletRegistrationBean.setName(facesServletProperties.getName());
  		facesServletServletRegistrationBean.setUrlMappings(facesServletProperties.getUrlMappings());
  		facesServletServletRegistrationBean.setLoadOnStartup(facesServletProperties.getLoadOnStartup());
  		facesServletServletRegistrationBean.setEnabled(facesServletProperties.isEnabled());
  		facesServletServletRegistrationBean.setAsyncSupported(facesServletProperties.isAsyncSupported());
  		facesServletServletRegistrationBean.setOrder(facesServletProperties.getOrder());
  
  		return facesServletServletRegistrationBean;
  	}
docs: This bean registers the {@link FacesServlet}.
  <p>
  This {@link ServletRegistrationBean} also sets two
  {@link ServletContext#setAttribute(String, Object) servlet-context attributes} to inform Mojarra and MyFaces about
  the dynamically added Servlet.
  
  @param facesServletProperties The properties for the {@link FacesServlet}-registration.
  
  @return A custom {@link ServletRegistrationBean} which registers the {@link FacesServlet}.