Исключение выдается, когда я хочу запросить самую младшую (по дате) запись по userId с userId не пустым. Этот метод написан правильно или есть какая-то ошибка?
У меня есть следующие компоненты:
Репозиторий
public interface CustomEventStorage extends JpaRepository<CustomEventData, CustomEventDataId> {
CustomEventData findFirstByUserIdNotNullOrderByIdDateDesc(@Param("userId") String userId);
}
Сущность
@Entity
@Table(name = "event")
public class CustomEventData {
@EmbeddedId
private CustomEventDataId id;
@Column(name = "state")
@Enumerated(EnumType.STRING)
private EventState state;
@Column(name = "user_id")
private String userId;
Идентификатор Embedabble
@Embeddable
public class CustomEventDataId implements Serializable {
@Column(name = "event_id")
private String eventId;
@Column(name = "date")
private LocalDateTime date;
Исключение
Вызывается: java .lang.IllegalArgumentException: предоставлено не менее 1 параметра, но в запросе присутствует только 0 параметров , в org.springframework.util.Assert.isTrue (Assert. java: 136) ~ [spring-core-5.1.7.RELEASE.jar: 5.1.7.RELEASE] в org.springframework.data.jpa.repository. query.QueryParameterSetterFactory $ CriteriaQueryParameterSetterFactory.create (QueryParameterSetterFactory. java: 291) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8. .ParameterBinderFactory.lambda $ createQueryParameterSetter $ 1 (ParameterBinderFactory. java: 139) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в java .util.stream.ReferencePipeline $ 3 $ 1 .accept (ReferencePipeline. java: 193) ~ [na: 1.8.0_242] в java .util.Spliterators $ ArraySpliterator.tryAdvance (Spliterators. java: 958) ~ [na: 1.8.0_242] в java .util.stream.ReferencePipeline.forEachWithCancel (ReferencePipeline. java: 126) ~ [na: 1.8.0_242] в java .util.stream.AbstractPipeline.copyIntoWithCancel (AbstractPipeline. java: 499) ~ [ na: 1.8.0_242] at java .util.stream.AbstractPipeline.copyInto (AbstractPipeline. java: 486) ~ [na: 1.8. 0_242] в java .util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline. java: 472) ~ [na: 1.8.0_242] в java .util.stream.FindOps $ FindOp.evaluateSequential (FindOps. java: 152) ~ [na: 1.8.0_242] в java .util.stream.AbstractPipeline.evaluate (AbstractPipeline. java: 234) ~ [na: 1.8.0_242] в java .util.stream. ReferencePipeline.findFirst (ReferencePipeline. java: 531) ~ [na: 1.8.0_242] at org.springframework.data.jpa.repository.query.ParameterBinderFactory.createQueryParameterSetter (ParameterBinderFactory. java: 141) ~ -jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] at org.springframework.data.jpa.repository.query.ParameterBinderFactory.lambda $ createSetters $ 0 (ParameterBinderFactory. java: 131) ~ [spring-data -jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в java .util.stream.ReferencePipeline $ 3 $ 1.accept (ReferencePipeline. java: 193) ~ [na: 1.8.0_242] в java .util.ArrayList $ ArrayListSpliterator.forEachRemaining (ArrayList. java: 1382) ~ [na: 1.8.0_242] в java .util.stream.AbstractPipeline.copyInto (AbstractPipeline. java: 482) ~ [na: 1.8.0_242] в java .util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline. java: 472) ~ [na: 1.8.0_242] в java .util.stream.ReduceOps $ ReduceOp.evaluateSequential (ReduceOps. java: 708) ~ [na: 1.8.0_242] в java .util.stream.AbstractPipeline.evaluate (AbstractPipeline. java: 234) ~ [ na: 1.8.0_242] в java .util.stream.ReferencePipeline.collect (ReferencePipeline. java: 566) ~ [na: 1.8.0_242] в org.springframework.data.jpa.repository.query.ParameterBinderFactory. createSetters (ParameterBinderFactory. java: 132) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в org.springframework.data.jpa.repository.query.ParameterBinderFactory.createSetters (ParameterBinderFactory . java: 124) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в org.springframework.data.jpa.repository.query.ParameterBinderFactory.createCriteriaBinder (ParameterBinderFactory. java: 75) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] по адресу org.springframework.data.jpa.repository.quer y.PartTreeJpaQuery $ QueryPreparer.getBinder (PartTreeJpaQuery. java: 250) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в org.springframework.data.jpa.repository.query . .PartTreeJpaQuery $ QueryPreparer (. PartTreeJpaQuery java: 149) ~ [spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] в org.springframework.data.jpa.repository.query.PartTreeJpaQuery $ CountQueryPreparer. (PartTreeJpaQuery. java: 270) ~ [ spring-data-jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] at org.springframework.data.jpa.repository.query.PartTreeJpaQuery. (PartTreeJpaQuery. java: 79) ~ [spring-data- jpa-2.1.8.RELEASE.jar: 2.1.8.RELEASE] ... пропущено 70 общих кадров