Проекция данных Spring - ClassCastException - Создание проекции для сущности, расширяющей класс - PullRequest
1 голос
/ 07 октября 2019

Моя теория заключается в том, что Spring не может создать проекцию для сущности, которая расширяет другой класс (в моем случае это класс DomainObject).

Это моя сущность (JobEntity):https://pastebin.com/3EdtPBSZ

Мой репозиторий

@RepositoryRestResource(excerptProjection = JobExcerpt.class)
public interface JobExcerptRepository extends JpaRepository<JobEntity, Long> {
    JobExcerpt findByIdAndRetailerId(Long jobId, Long retailerId);
}

Класс JobExcerpt:

@Projection(
        name = "jobProjection",
        types = { JobEntity.class })
public interface JobExcerpt {
    Long getId();

    Long getRetailerId();
}

Прежде чем вы скажете, что мне нужно, чтобы мой метод репозитория #findByIdAndRetailerId возвращал тип "JobEntity""Я пробовал это, и проекция не применяется, так как я могу получить доступ к полям объекта, которые не определены в проекции. Я следую учебному пособию Baeldung в сочетании с некоторыми другими источниками в сети.

Сообщение трассировки стека java.lang.ClassCastException: au.com.parcelpoint.domain.batch.JobEntity cannot be cast to au.com.parcelpoint.domain.batch.projection.JobExcerpt

Трассировка полного стека: https://pastebin.com/MjBNTT7Y

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...