0
は、私のようなクエリを持っています。時には、次の例外がスローされます。矛盾はIllegalArgumentException
Description - Parameter with that name [bankIds] did not exist; nested exception is java.lang.IllegalArgumentException: Parameter with that name [bankIds] did not exist, StackTrace - java.lang.IllegalArgumentException: Parameter with that name [bankIds] did not exist
at org.hibernate.jpa.spi.BaseQueryImpl.findParameterRegistration(BaseQueryImpl.java:505)
at org.hibernate.jpa.spi.BaseQueryImpl.setParameter(BaseQueryImpl.java:631)
at org.hibernate.jpa.spi.AbstractQueryImpl.setParameter(AbstractQueryImpl.java:180)
at org.hibernate.jpa.spi.AbstractQueryImpl.setParameter(AbstractQueryImpl.java:49)
観察
私は私がこの観察に追加しているか、右わからないんだけど、私は重いデータにはほとんどされているモジュールの内部で使用された場合、サービスが唯一失敗したと思います(ここでもそれは時々だけ失敗する)。メモリの問題により、このような種類の例外がスローされますか?
Inconsistant問題が同じエンティティ上の別の方法で観察されたクエリ
@Query("select I from Indicator I where I.bankId in :bankIds ")
の以下の形式を使用してください
@Query("select I from Indicator I where I.activityId in (:activityIds) ")
\t public List<Indicator> getIndicatorDetailsByActivityIdList(@Param("activityIds") Set<Long> acyIdList);
'bankIdList'が空または' null'の場合、どのようなエラーがありますか? – pirho
JPAは引数としてemtpy setまたはnullを受け入れることができますが、原因をキャッチするためにリポジトリを呼び出す前にbankIdsListを記録しましょう。 –
@AndriySlobodyanykさて、 '(:bankIds) 'に何が割り当てられるのだろうかと思っています。 JPQL/HQLに精通しているのではなく、CriteriaQueryを使用しています。 – pirho