Orika Mapper: невозможно зарегистрировать преобразователи после инициализации MapperFacadeJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Orika Mapper: невозможно зарегистрировать преобразователи после инициализации MapperFacade

Сообщение Anonymous »

Я получаю эту ошибку: «java.lang.IllegalStateException: невозможно зарегистрировать преобразователи после инициализации MapperFacade» для моего картографа Oricka. Я использую проект Spring Framework (5.3.12) с Java 17. Я попробовал несколько решений, но каждое приводило к той же ошибке, что и упомянутая. Я попробовал это решение Orika Mapper, сделав addConverter() статической функцией в приведенном ниже коде, но это не сработало:

Код: Выделить всё

import ma.glasnost.orika.Converter;
import ma.glasnost.orika.Mapper;
import ma.glasnost.orika.MapperFactory;
import ma.glasnost.orika.impl.ConfigurableMapper;
import ma.glasnost.orika.impl.DefaultMapperFactory;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
import java.util.Map;

@Component
public class OrikaMapper extends ConfigurableMapper implements ApplicationContextAware {
private MapperFactory factory;

@Override
protected void configureFactoryBuilder(final DefaultMapperFactory.Builder factoryBuilder) {
}

@Override
protected void configure(final MapperFactory factory) {
this.factory = factory;
}

@Override
public void setApplicationContext(final ApplicationContext applicationContext) throws BeansException {
addAllSpringBeans(applicationContext);
}

private void addAllSpringBeans(final ApplicationContext applicationContext) {
final Map converters = applicationContext.getBeansOfType(Converter.class);
for (final Converter converter : converters.values()) {
addConverter(converter);
}

final Map mappers = applicationContext.getBeansOfType(Mapper.class);
for (final Mapper mapper : mappers.values()) {
addMapper(mapper);
}
}

public void addConverter(final Converter converter) {
factory.getConverterFactory().registerConverter(converter);
}

public void addMapper(final Mapper mapper) {
factory.classMap(mapper.getAType(), mapper.getBType())
.byDefault()
.customize((Mapper) mapper)
.register();
}
}
Зависимость картографа Orika:

Код: Выделить всё

        
ma.glasnost.orika
orika-core
1.5.4

Будем благодарны за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/788 ... initialize
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Исключение Mapper Mapper Jackson с метадаными `$ Schema` в JSON
    Anonymous » » в форуме JAVA
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • Исключение Mapper Mapper Jackson с метадаными `$ Schema` в JSON
    Anonymous » » в форуме JAVA
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Исключение Mapper Mapper Jackson с метадаными `$ Schema` в JSON
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • JsonParseException, когда анализируя двойные кавычки в строке Java с использованием Mapper Object Mapper
    Anonymous » » в форуме JAVA
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Mapstruct Mapper создает NullPointerException, потому что Mapper AutoWailired is null
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»