Я хочу использовать постраничный интерфейс класса dto (для сортировки элементов), который содержит элементы двух моделей классов.К сожалению, когда я использую объекты из репозитория, все работает, но когда я использую сортировку второго класса, она не работает.Как я могу решить эту проблему?
@RepositoryRestResource
public interface TopicRepository extends JpaRepository<Topic, Long> {
Page<Topic> getTopicsByCategoryId(Long id, Pageable pageable);
Когда я использую элементы темы, все работает.
public Page<TopicPaginationDto> getPaginationTopics(Long id, Pageable pageable){
Page<Topic> topics = topicRepository.getTopicsByCategoryId(id, pageable);
Page<TopicPaginationDto> topicPaginationDtos =
topics.map((Function<Topic, TopicPaginationDto>) topic -> new TopicPaginationDto( topic.getId(),
topic.getTitle(), topic.getTopicAuthor().getUsername(),
newestPost(topic.getId()).getPostAuthor().getUsername(),
topic.getDisplayed(), topic.isPinned(), topic.getPosts().size(),
newestPost(topic.getId()).getPostCreatedDate(),
topic.getTopicCreatedDate())
return topicPaginationDtos;
);
или
return new PageImpl<>(topics.stream().map(topic -> new TopicPaginationDto(
topic.getId(),
topic.getTitle(), topic.getTopicAuthor().getUsername(),
newestPost(topic.getId()).getPostAuthor().getUsername(),
topic.getDisplayed(), topic.isPinned(), topic.getPosts().size(),
newestPost(topic.getId()).getPostCreatedDate(),
topic.getTopicCreatedDate()
)).collect(Collectors.toList()), pageable, topics.getTotalElements());
return topicPaginationDtos;
}
Элементы сообщений не работаюткогда я пытаюсь сортировать (в почтальоне).