Search in sources :

Example 1 with HibernateValidationBinder

use of io.dropwizard.jersey.validation.HibernateValidationBinder in project dropwizard by dropwizard.

the class JerseyClientBuilder method buildConfig.

private Configuration buildConfig(final String name, final ExecutorService threadPool, final ObjectMapper objectMapper, final Validator validator) {
    final ClientConfig config = new ClientConfig();
    for (Object singleton : this.singletons) {
        config.register(singleton);
    }
    for (Class<?> provider : this.providers) {
        config.register(provider);
    }
    config.register(new JacksonFeature(objectMapper));
    config.register(new HibernateValidationBinder(validator));
    for (Map.Entry<String, Object> property : this.properties.entrySet()) {
        config.property(property.getKey(), property.getValue());
    }
    config.register(new DropwizardExecutorProvider(threadPool));
    if (connectorProvider == null) {
        final ConfiguredCloseableHttpClient apacheHttpClient = apacheHttpClientBuilder.buildWithDefaultRequestConfiguration(name);
        config.connectorProvider((client, runtimeConfig) -> createDropwizardApacheConnector(apacheHttpClient));
    } else {
        config.connectorProvider(connectorProvider);
    }
    return config;
}
Also used : JacksonFeature(io.dropwizard.jersey.jackson.JacksonFeature) HibernateValidationBinder(io.dropwizard.jersey.validation.HibernateValidationBinder) ClientConfig(org.glassfish.jersey.client.ClientConfig) LinkedHashMap(java.util.LinkedHashMap) Map(java.util.Map)

Example 2 with HibernateValidationBinder

use of io.dropwizard.jersey.validation.HibernateValidationBinder in project dropwizard by dropwizard.

the class AbstractServerFactory method createAppServlet.

protected Handler createAppServlet(Server server, JerseyEnvironment jersey, ObjectMapper objectMapper, Validator validator, MutableServletContextHandler handler, @Nullable Servlet jerseyContainer, MetricRegistry metricRegistry) {
    configureSessionsAndSecurity(handler, server);
    final String allowedMethodsParam = String.join(",", allowedMethods);
    handler.addFilter(AllowedMethodsFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)).setInitParameter(AllowedMethodsFilter.ALLOWED_METHODS_PARAM, allowedMethodsParam);
    if (enableThreadNameFilter) {
        handler.addFilter(ThreadNameFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST));
    }
    serverPush.addFilter(handler);
    if (jerseyContainer != null) {
        jerseyRootPath.ifPresent(jersey::setUrlPattern);
        jersey.register(new JacksonFeature(objectMapper));
        jersey.register(new HibernateValidationBinder(validator));
        if (registerDefaultExceptionMappers == null || registerDefaultExceptionMappers) {
            jersey.register(new ExceptionMapperBinder(detailedJsonProcessingExceptionMapper));
        }
        handler.addServlet(new ServletHolder("jersey", jerseyContainer), jersey.getUrlPattern());
    }
    final InstrumentedHandler instrumented = new InstrumentedHandler(metricRegistry);
    instrumented.setServer(server);
    instrumented.setHandler(handler);
    return instrumented;
}
Also used : InstrumentedHandler(com.codahale.metrics.jetty9.InstrumentedHandler) JacksonFeature(io.dropwizard.jersey.jackson.JacksonFeature) ExceptionMapperBinder(io.dropwizard.setup.ExceptionMapperBinder) HibernateValidationBinder(io.dropwizard.jersey.validation.HibernateValidationBinder) ServletHolder(org.eclipse.jetty.servlet.ServletHolder) AllowedMethodsFilter(io.dropwizard.jersey.filter.AllowedMethodsFilter)

Aggregations

JacksonFeature (io.dropwizard.jersey.jackson.JacksonFeature)2 HibernateValidationBinder (io.dropwizard.jersey.validation.HibernateValidationBinder)2 InstrumentedHandler (com.codahale.metrics.jetty9.InstrumentedHandler)1 AllowedMethodsFilter (io.dropwizard.jersey.filter.AllowedMethodsFilter)1 ExceptionMapperBinder (io.dropwizard.setup.ExceptionMapperBinder)1 LinkedHashMap (java.util.LinkedHashMap)1 Map (java.util.Map)1 ServletHolder (org.eclipse.jetty.servlet.ServletHolder)1 ClientConfig (org.glassfish.jersey.client.ClientConfig)1