Hibernate を使用してレコード数を数えようとしているときに、非常に厄介な問題に遭遇しました。デバッグすると、HQL と関連するエラーが表示されます。
HQL:
SELECT COUNT(id) AS totalSize FROM UserAccount WHERE 1 = 1 AND role IN (:role_list) AND agent.id = :agentId
パラメータを設定:
query.setParameter("role_list", parameter.getRoles());
query.setParameter("agentId", parameter.getAgentId());
エラー:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.Integer
名前の代わりにシーケンスを使用してパラメーターを設定すると、以前は正常に機能していたので、私はそれと混同しています。誰か私にそのアイデアを教えてください。
前もって感謝します。