Не найден метод с аннотацией @Named#valueJAVA

Программисты JAVA общаются здесь
Anonymous
Не найден метод с аннотацией @Named#value

Сообщение Anonymous »

У меня возникли проблемы с использованием MapStruct версии 1.4.1, когда я пытаюсь реализовать собственное сопоставление. Это код, который я написал:

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

package com.kucazdravlja.user.mappers;

import com.kucazdravlja.user.dto.NoticeBoardDto;
import com.kucazdravlja.user.entities.NoticeBoard;
import com.kucazdravlja.user.entities.NoticeBoardStatus;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Named;

import java.util.Objects;

@Mapper(uses = {BaseJournalMapper.class})
public interface NoticeBoardMapper {

@Mapping(source = "status", target = "status", qualifiedByName = "getNoticeBoardStatusName")
NoticeBoard dtoToEntity(NoticeBoardDto noticeBoardDto);

@Mapping(source = "status", target = "status", qualifiedByName = "getNoticeBoardStatusDescription")
NoticeBoardDto entityToDto(NoticeBoard noticeBoard);

@Named("getNoticeBoardStatusDescription")
static String getNoticeBoardStatusDescriptionConverter(NoticeBoard noticeBoard) {
return Objects.requireNonNull(NoticeBoardStatus.findByName(noticeBoard.getStatus())).getDescription();
}

@Named("getNoticeBoardStatusName")
static String getNoticeBoardStatusNameConverter(NoticeBoardDto noticeBoardDto) {
return Objects.requireNonNull(NoticeBoardStatus.findByName(noticeBoardDto.getStatus())).name();
}
}
При запуске приложения происходит сбой и выдается ошибка

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

Error:(15, 5) java: Qualifier error. No method found annotated with @Named#value: [ getNoticeBoardStatusName ].
Не знаю, в чем проблема, потому что у меня есть метод с таким именем.

Подробнее здесь: https://stackoverflow.com/questions/655 ... namedvalue

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