EclipseLink: Как включить проверку бинов без JEE ​​/ CDI? (так называемое включение в SE) - PullRequest
0 голосов
/ 14 ноября 2018

У нас есть тестовое расширение, которое создает EntityManager для наших тестов:

Map<String, String> properties = new HashMap<String, String>(); properties.put(PersistenceUnitProperties.JDBC_DRIVER, DRIVER_NAME); properties.put(PersistenceUnitProperties.JDBC_URL, createUrl(testInstance)); properties.put(PersistenceUnitProperties.JDBC_USER, DB_USER); properties.put(PersistenceUnitProperties.COORDINATION_PROTOCOL, null); emf = Persistence.createEntityManagerFactory(PU_NAME, properties); ... EntityManager em = emf.createEntityManager();

Мы заметили, что BeanValidator не запускает pre-persist или pre-update, хотя другие наши валидаторы работают просто отлично. Это имеет смысл, в JEE-контейнере библиотека Bean Validation предоставляется самим контейнером.

Возможно ли иметь что-то, чтобы EclipseLink вызывал что-то вроде OpenWebBeans, если мы включили это в путь к классам теста?

1 Ответ

0 голосов
/ 15 ноября 2018

Это было так же просто, как добавить это к нашему пом:

    <dependency>
        <groupId>org.apache.bval</groupId>
        <artifactId>bval-jsr</artifactId>
        <version>1.1.2</version>
        <scope>test</scope>
    </dependency>
...