2016-12-20 2 views
0

Grails가 1.3.7에서 Grails 2.1.0으로 업그레이드되었습니다. Grails 실행 앱이 실행되었습니다. 오류 없음.grails webflow notserializableexception

웹 플로에 대한 호출 액션은 GrailsExceptionResolver 오류를 발생시킵니다. grails webflow 객체가 직렬화 가능하지 않음을 명시합니다. 나는 모든 클래스를 탐색하여 모든 클래스가 'serializable을 구현'하는지 확인합니다.

직렬화되지 않은 개체를 식별하지 못하는 오류 때문에 클래스 필드를 일시적으로 만들어서 직렬화 가능 런타임에서 무시해야하는지 식별 할 수 없습니다.

Full Stacktrace: 
2016-12-20 09:51:25,750 [http-bio-80-exec-1] DEBUG services.RpgService - ************ 

| Error 2016-12-20 09:51:26,450 [http-bio-80-exec-1] ERROR errors.GrailsExceptionResolver - NotSerializableException occurred when processing request: [GET] /…/…/order 
org.codehaus.groovy.grails.commons.spring.GrailsWebApplicationContext. Stacktrace follows: 
Message: Could not serialize flow execution; make sure all objects stored in flow or flash scope are serializable 
    Line | Method 
->> 384 | doFilterInternal in org.jsecurity.web.servlet.JsecurityFilter 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
| 183 | doFilter   in org.jsecurity.web.servlet.OncePerRequestFilter 
| 886 | runTask . . . . in java.util.concurrent.ThreadPoolExecutor$Worker 
| 908 | run    in  '' 
^ 662 | run . . . . . . in java.lang.Thread 
Caused by NotSerializableException: org.codehaus.groovy.grails.commons.spring.GrailsWebApplicationContext 
->> 1164 | writeObject0  in java.io.ObjectOutputStream 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
| 1518 | defaultWriteFields in  '' 
| 1483 | writeSerialData in  '' 
| 1400 | writeOrdinaryObject in  '' 
| 1158 | writeObject0 . . in  '' 
| 1518 | defaultWriteFields in  '' 
| 1483 | writeSerialData in  '' 
| 1400 | writeOrdinaryObject in  '' 
| 1158 | writeObject0 . . in  '' 
| 330 | writeObject  in  '' 
| 1001 | writeObject . . in java.util.HashMap 
| 940 | invokeWriteObject in java.io.ObjectStreamClass 
| 1469 | writeSerialData in java.io.ObjectOutputStream 
| 1400 | writeOrdinaryObject in  '' 
| 1158 | writeObject0 . . in  '' 
| 1518 | defaultWriteFields in  '' 

답변

0

해상도를 찾았습니다. 내 컨트롤러 서비스가 일시적 일 필요가있는 sessionFactory를 호출하고있었습니다.

코드 변경 : def sessionFactory => transient sessionFactory. 도메인 클래스 변수를 직접 변환하지 않아도됩니다. 이 문제를 해결했습니다.

관련 문제