0
SET 개체의 속성에 액세스하는 동안 트랜잭션 서비스에서 일반적인 최대 절전 모드 지연 초기화 예외가 발생합니다. grails 초기화 트랜잭션 예외적 인 예외 처리
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
SET 개체의 속성에 액세스하는 동안 트랜잭션 서비스에서 일반적인 최대 절전 모드 지연 초기화 예외가 발생합니다. grails 초기화 트랜잭션 예외적 인 예외 처리
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
XYZ는이 방법 인 것처럼 그루비에 의해 호출되는 폐쇄입니다 카테고리의 제목 속성에 액세스 할 때 나는 예외를 받고 있어요,하지만 방법이 아니다
class ProductService {
static transactional = true
def xyz() {
def products = Product.list()
products.each { product ->
def category = product.categories.asList().first()
def title = category.title
}
}
}
. 그래서 Spring (그것은 단지 필드)에 의해 프록시 화되지 않으며, 트랜잭션적인 동작을 얻지 못합니다. Service 클래스에서 공용 클로저를 사용하는 것은 결코 좋은 이유가 아닙니다 (내부 유틸리티 종료가 좋습니다).
이 작동합니다 :
실수로void xyz() {
for (product in Product.list()) {
def category = product.categories.asList().first()
def title = category.title
}
}
미안 나는 그것을 폐쇄하지만 그것은 방법 및 임이 문제가 계속지고 있지, starange 부분 그것이 내 로컬 및 스테이징 서버에서 작동하지만에 실패했다 프로덕션 서버. –