Отказ от критериаверии бросает исключение при миграции из Hibernate 5 -> 6JAVA

Программисты JAVA общаются здесь
Anonymous
Отказ от критериаверии бросает исключение при миграции из Hibernate 5 -> 6

Сообщение Anonymous »

Я столкнулся с некоторой проблемой привязки параметров: < /p>

Java.lang.illegalargumentException: не может создать связы org.hibernate.query.sqm.tree.expression.valuebindjpacriteriaparameter@a19fe87]

Ссылка не является параметром этого запроса < /li>
< /ul>
< /blockquote>
, когда мы пробуем мигрировать в Hibernate 6 в следующем методе: < /p>
public List findByListOfSubDocumentsAndDateRange(

final List subDocuments,

final Date effDate,

final Date endDate

) {

final Session session = getSessionFactory().getCurrentSession();

final CriteriaBuilder builder = session.getCriteriaBuilder();

final CriteriaQuery criteria = builder.createQuery(A.class);

final Root root = criteria.from(A.class);

// Split input list into batches of 1000 items

final int batchSize = 1000;

List results = new ArrayList();

for (int i = 0; i < subDocuments.size(); i += batchSize) {

List batchList = subDocuments.subList(i, Math.min(i + batchSize, subDocuments.size()));

// Create predicates

List
predicates = new ArrayList();

predicates.add(root.get(PRIMARY_KEY).get(COLUMN1).in(batchList));

predicates.add(builder.lessThanOrEqualTo(root.get(PRIMARY_KEY).get(COLUMN2), effDate));

if (endDate != null) {

predicates.add(builder.greaterThanOrEqualTo(root.get(PRIMARY_KEY).get(COLUMN_ENDDATE), endDate));

}

criteria.select(root).where(predicates.toArray(new Predicate[0]));

// Execute batch query and collect results

results.addAll(session.createQuery(criteria).getResultList());

}

return results;

}
< /code>
Здесь мы выполняем пакетирование, чтобы повысить производительность запроса. FOR LOOP Тест интеграции работает только при добавлении пакета, который он не сработал.
Любые идеи о том, как решить эту проблему. Я попытался проверить Hibernate 6 Docs не смогли найти причину для этого вопроса.


Подробнее здесь: https://stackoverflow.com/questions/794 ... ibernate-5

Вернуться в «JAVA»