org.eclipse.jetty.servlet.ErrorPageErrorHandler Java Examples
The following examples show how to use
org.eclipse.jetty.servlet.ErrorPageErrorHandler.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: ErrorPageServletTest.java From nexus-public with Eclipse Public License 1.0 | 5 votes |
@Before public void setUp() throws Exception { TemplateHelper templateHelper = new TemplateHelperImpl(new ApplicationVersionSupport() { @Override public String getEdition() { return "Test"; } }, new VelocityEngine()); XFrameOptions xFrameOptions = new XFrameOptions(true); ServletContextHandler context = new ServletContextHandler(); context.addServlet(new ServletHolder(new ErrorPageServlet(templateHelper, xFrameOptions)), "/error.html"); context.addServlet(new ServletHolder(new BadServlet()), "/bad/*"); ErrorPageErrorHandler errorHandler = new ErrorPageErrorHandler(); errorHandler.addErrorPage(GLOBAL_ERROR_PAGE, "/error.html"); context.setErrorHandler(errorHandler); BaseUrlHolder.set("http://127.0.0.1"); server = new Server(0); server.setHandler(context); server.start(); port = ((ServerConnector) server.getConnectors()[0]).getLocalPort(); }
Example #2
Source File: SpringMvcJettyComponentTestServer.java From backstopper with Apache License 2.0 | 4 votes |
private static ErrorHandler generateErrorHandler() { ErrorPageErrorHandler errorHandler = new ErrorPageErrorHandler(); errorHandler.addErrorPage(Throwable.class, "/error"); return errorHandler; }
Example #3
Source File: Main.java From backstopper with Apache License 2.0 | 4 votes |
private static ErrorHandler generateErrorHandler() { ErrorPageErrorHandler errorHandler = new ErrorPageErrorHandler(); errorHandler.addErrorPage(Throwable.class, "/error"); return errorHandler; }
Example #4
Source File: StreamlineApplication.java From streamline with Apache License 2.0 | 4 votes |
private void registerResources(StreamlineConfiguration configuration, Environment environment, Subject subject) throws ConfigException, ClassNotFoundException, IllegalAccessException, InstantiationException { StorageManager storageManager = getDao(configuration); TransactionManager transactionManager; if (storageManager instanceof TransactionManager) { transactionManager = (TransactionManager) storageManager; } else { transactionManager = new NOOPTransactionManager(); } environment.jersey().register(new TransactionEventListener(transactionManager, true)); Collection<Class<? extends Storable>> streamlineEntities = getStorableEntities(); storageManager.registerStorables(streamlineEntities); LOG.info("Registered streamline entities {}", streamlineEntities); FileStorage fileStorage = this.getJarStorage(configuration, storageManager); int appPort = ((HttpConnectorFactory) ((DefaultServerFactory) configuration.getServerFactory()).getApplicationConnectors().get(0)).getPort(); String catalogRootUrl = configuration.getCatalogRootUrl().replaceFirst("8080", appPort + ""); List<ModuleConfiguration> modules = configuration.getModules(); List<Object> resourcesToRegister = new ArrayList<>(); // add StreamlineConfigResource resourcesToRegister.add(new StreamlineConfigurationResource(configuration)); // authorizer StreamlineAuthorizer authorizer; AuthorizerConfiguration authorizerConf = configuration.getAuthorizerConfiguration(); SecurityCatalogService securityCatalogService = new SecurityCatalogService(storageManager); if (authorizerConf != null) { authorizer = ((Class<StreamlineAuthorizer>) Class.forName(authorizerConf.getClassName())).newInstance(); Map<String, Object> authorizerConfig = new HashMap<>(); authorizerConfig.put(DefaultStreamlineAuthorizer.CONF_CATALOG_SERVICE, securityCatalogService); authorizerConfig.put(DefaultStreamlineAuthorizer.CONF_ADMIN_PRINCIPALS, authorizerConf.getAdminPrincipals()); authorizer.init(authorizerConfig); String filterClazzName = authorizerConf.getContainerRequestFilter(); ContainerRequestFilter filter; if (StringUtils.isEmpty(filterClazzName)) { filter = new StreamlineKerberosRequestFilter(); // default } else { filter = ((Class<ContainerRequestFilter>) Class.forName(filterClazzName)).newInstance(); } LOG.info("Registering ContainerRequestFilter: {}", filter.getClass().getCanonicalName()); environment.jersey().register(filter); } else { LOG.info("Authorizer config not set, setting noop authorizer"); String noopAuthorizerClassName = "com.hortonworks.streamline.streams.security.impl.NoopAuthorizer"; authorizer = ((Class<StreamlineAuthorizer>) Class.forName(noopAuthorizerClassName)).newInstance(); } for (ModuleConfiguration moduleConfiguration: modules) { String moduleName = moduleConfiguration.getName(); String moduleClassName = moduleConfiguration.getClassName(); LOG.info("Registering module [{}] with class [{}]", moduleName, moduleClassName); ModuleRegistration moduleRegistration = (ModuleRegistration) Class.forName(moduleClassName).newInstance(); if (moduleConfiguration.getConfig() == null) { moduleConfiguration.setConfig(new HashMap<String, Object>()); } if (moduleName.equals(Constants.CONFIG_STREAMS_MODULE)) { moduleConfiguration.getConfig().put(Constants.CONFIG_CATALOG_ROOT_URL, catalogRootUrl); } Map<String, Object> initConfig = new HashMap<>(moduleConfiguration.getConfig()); initConfig.put(Constants.CONFIG_AUTHORIZER, authorizer); initConfig.put(Constants.CONFIG_SECURITY_CATALOG_SERVICE, securityCatalogService); initConfig.put(Constants.CONFIG_SUBJECT, subject); if ((initConfig.get("proxyUrl") != null) && (configuration.getHttpProxyUrl() == null || configuration.getHttpProxyUrl().isEmpty())) { LOG.warn("Please move proxyUrl, proxyUsername and proxyPassword configuration properties under streams module to httpProxyUrl, " + "httpProxyUsername and httpProxyPassword respectively at top level in your streamline.yaml"); configuration.setHttpProxyUrl((String) initConfig.get("proxyUrl")); configuration.setHttpProxyUsername((String) initConfig.get("proxyUsername")); configuration.setHttpProxyPassword((String) initConfig.get("proxyPassword")); } // pass http proxy information from top level config to each module. Up to them how they want to use it. Currently used in StreamsModule initConfig.put(Constants.CONFIG_HTTP_PROXY_URL, configuration.getHttpProxyUrl()); initConfig.put(Constants.CONFIG_HTTP_PROXY_USERNAME, configuration.getHttpProxyUsername()); initConfig.put(Constants.CONFIG_HTTP_PROXY_PASSWORD, configuration.getHttpProxyPassword()); moduleRegistration.init(initConfig, fileStorage); if (moduleRegistration instanceof StorageManagerAware) { LOG.info("Module [{}] is StorageManagerAware and setting StorageManager.", moduleName); StorageManagerAware storageManagerAware = (StorageManagerAware) moduleRegistration; storageManagerAware.setStorageManager(storageManager); } if (moduleRegistration instanceof TransactionManagerAware) { LOG.info("Module [{}] is TransactionManagerAware and setting TransactionManager.", moduleName); TransactionManagerAware transactionManagerAware = (TransactionManagerAware) moduleRegistration; transactionManagerAware.setTransactionManager(transactionManager); } resourcesToRegister.addAll(moduleRegistration.getResources()); } LOG.info("Registering resources to Jersey environment: [{}]", resourcesToRegister); for(Object resource : resourcesToRegister) { environment.jersey().register(resource); } environment.jersey().register(MultiPartFeature.class); final ErrorPageErrorHandler errorPageErrorHandler = new ErrorPageErrorHandler(); errorPageErrorHandler.addErrorPage(Response.Status.UNAUTHORIZED.getStatusCode(), "/401.html"); environment.getApplicationContext().setErrorHandler(errorPageErrorHandler); }