@Override public void contextInitialized(ServletContextEvent sce) { final ServletContext context = sce.getServletContext(); LOGGER = LumifyLoggerFactory.getLogger(ApplicationBootstrap.class); LOGGER.info("Servlet context initialized..."); try { if (context != null) { final Configuration config = fetchApplicationConfiguration(context); LOGGER.info("Running application with configuration:\n%s", config); InjectHelper.inject(this, LumifyBootstrap.bootstrapModuleMaker(config)); // Store the injector in the context for a servlet to access later context.setAttribute(Injector.class.getName(), InjectHelper.getInjector()); if (!config.get(Configuration.MODEL_PROVIDER).equals(Configuration.UNKNOWN_STRING)) { FrameworkUtils.initializeFramework( InjectHelper.getInjector(), userRepository.getSystemUser()); } InjectHelper.getInjector().getInstance(OntologyRepository.class); LOGGER.warn( "JavaScript / Less modifications will not be reflected on server. Run `grunt watch` from webapp directory in development"); } else { LOGGER.error("Servlet context could not be acquired!"); } } catch (Exception ex) { LOGGER.error("Failed to initialize context", ex); throw new RuntimeException("Failed to initialize context", ex); } }
@Override public void init(WebApp app, ServletContext servletContext, Handler authenticationHandler) { StaticResourceHandler jsHandler = new StaticResourceHandler( this.getClass(), "/ldap-x509/authentication.js", "application/javascript"); StaticResourceHandler loginTemplateHandler = new StaticResourceHandler(this.getClass(), "/ldap-x509/templates/login.hbs", "text/plain"); StaticResourceHandler lessHandler = new StaticResourceHandler(this.getClass(), "/ldap-x509/less/login.less", "text/plain"); app.registerJavaScript("/ldap-x509/logout.js"); app.get( "/logout.html", new StaticResourceHandler(this.getClass(), "/ldap-x509/logout.html", "text/html")); app.get( "/jsc/configuration/plugins/authentication/css/logout.css", new StaticResourceHandler(this.getClass(), "/ldap-x509/css/logout.css", "text/css")); app.get("/jsc/configuration/plugins/authentication/authentication.js", jsHandler); app.get("/jsc/configuration/plugins/authentication/templates/login.hbs", loginTemplateHandler); app.get("/jsc/configuration/plugins/authentication/less/login.less", lessHandler); app.post( AuthenticationHandler.LOGIN_PATH, InjectHelper.getInstance(LdapX509AuthenticationHandler.class)); }