0
내가 JPA에 새로 온 사람에 대한 정의와 테이블을 가입하고 난 API 기준을 사용하여이 쿼리를 만들려면 : 검색 및 감상 후JPA 기준 : 절
SELECT company.*
FROM company
LEFT OUTER JOIN address ON company.id = address.company_id AND address.postal_code = '54000'
ORDER BY company.id;
을, 나는 논리적 인 것 같다이 코드를 시도 나 :
ERROR OpenEJB- EjbTransactionUtil.handleSystemException: org.apache.openjpa.persistence.criteria.Joins$List.on(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Join;
java.lang.AbstractMethodError: org.apache.openjpa.persistence.criteria.Joins$List.on(Ljavax/persistence/criteria/Expression;)Ljavax/persistence/criteria/Join;
가 나는 쪽을 생각, 누군가가 전에이 작업을 수행하려고 희망 :
...
CriteriaQuery<Company> query = criteriaBuilder.createQuery(Company.class)
Root<Company> defCompany = query.from(Company.class);
Join joinAddresses = defCompany.join("addresses", JoinType.LEFT);
joinAddresses.on(criteriaBuilder.equal(joinAddresses.get("postalCode"), "54000"));
query.orderBy(criteriaBuilder.asc(defCompany.get("id")));
List<Company> companies = entityManager.createQuer(query)
.getResultList();
...
그러나는 OpenJPA이 오류가 발생합니다 robably하지만 나는 이것에 대해 스레드 또는 질문을 찾을 수 없습니다.
그것은 Hibernate 5.2.5에서 작동한다. https://hibernate.atlassian.net/browse/HHH-2772를주의하십시오. 고마워요 :) –