All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.dropwizard.jersey.validation.HibernateValidationFeature Maven / Gradle / Ivy

There is a newer version: 5.0.0-rc.1
Show newest version
package io.dropwizard.jersey.validation;

import org.glassfish.hk2.utilities.binding.AbstractBinder;
import org.glassfish.jersey.server.internal.inject.ConfiguredValidator;

import javax.validation.Validator;
import javax.ws.rs.core.Feature;
import javax.ws.rs.core.FeatureContext;

/**
 * Register a Dropwizard configured {@link Validator} with Jersey, so that Jersey doesn't use its
 * default, which doesn't have our configurations applied.
 */
public class HibernateValidationFeature implements Feature {
    private final Validator validator;

    public HibernateValidationFeature(Validator validator) {
        this.validator = validator;
    }

    @Override
    public boolean configure(FeatureContext context) {
        context.register(new AbstractBinder() {
            @Override
            protected void configure() {
                bind(new DropwizardConfiguredValidator(validator)).to(ConfiguredValidator.class);
            }
        });

        return true;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy