2011-08-03 2 views
0

여기 내 설정입니다.넣어 최대 절전 모드에서 ehCache 널 포인터 예외

<?xml version="1.0" encoding="UTF-8"?> 

<ehcache>  
<defaultCache 
    maxElementsInMemory="500000" 
    eternal="false" 
    timeToIdleSeconds="120" 
    timeToLiveSeconds="120" 
    overflowToDisk="true" 
/> 
<cache 
    name="com.icon.sa.common.dm.PromoItem" 
    maxElementsInMemory="500000" 
    eternal="false" 
    timeToIdleSeconds="300" 
    timeToLiveSeconds="600" 
    overflowToDisk="true" 
/> 
<cache 
    name="org.hibernate.cache.StandardQueryCache" 
    maxElementsInMemory="500000" 
    eternal="false" 
    timeToLiveSeconds="120" 
    overflowToDisk="true"/> 
<cache 
    name="org.hibernate.cache.UpdateTimestampsCache" 
    maxElementsInMemory="500000" 
    eternal="true" 
    overflowToDisk="true"/> 

<cache name="query.PromosBySearchRequestFindAction" 
    maxElementsInMemory="500000" 
    eternal="false" 
    timeToLiveSeconds="86400" 
    overflowToDisk="true"/> 

</ehcache> 

나는() 나는이 예외를 얻을 query.list을 수행하려고 할 때

Aug 3, 2011 3:10:56 PM org.hibernate.cache.UpdateTimestampsCache <init> 
INFO: starting update timestamps cache at region: org.hibernate.cache.UpdateTimestampsCache 
Aug 3, 2011 3:10:56 PM org.hibernate.cache.StandardQueryCache <init> 
INFO: starting query cache at region: org.hibernate.cache.StandardQueryCache 
Time before db: Wed Aug 03 15:10:57 PDT 2011 
Aug 3, 2011 3:10:57 PM org.hibernate.cache.StandardQueryCache <init> 
INFO: starting query cache at region: query.PromosBySearchRequestFindAction 
Aug 3, 2011 3:10:57 PM com.icon.sa.service.action.BaseAction perform 
SEVERE: class com.icon.sa.service.action.euser.PromosBySearchRequestFindAction 
java.lang.NullPointerException 
    at org.hibernate.type.TypeHelper.disassemble(TypeHelper.java:146) 
    at org.hibernate.cache.StandardQueryCache.put(StandardQueryCache.java:106) 
    at org.hibernate.loader.Loader.putResultInQueryCache(Loader.java:2434) 
    at org.hibernate.loader.Loader.listUsingQueryCache(Loader.java:2321) 
    at org.hibernate.loader.Loader.list(Loader.java:2268) 
    at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:316) 
    at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1842) 
    at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:165) 
    at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:157) 
    at com.icon.sa.common.dm.dao.PromoItemDao.findAllReleasedBySearchRequest(PromoItemDao.java:121) 
    at com.icon.sa.service.action.euser.PromosBySearchRequestFindAction.doWork(PromosBySearchRequestFindAction.java:63) 
    at com.icon.sa.service.action.BaseAction.perform(BaseAction.java:61) 
    at com.icon.sa.ws.euser.PromosResource.get(PromosResource.java:86) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:168) 
    at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:70) 
    at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:279) 
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136) 
    at com.sun.jersey.server.impl.uri.rules.SubLocatorRule.accept(SubLocatorRule.java:121) 
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136) 
    at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:86) 
    at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:136) 
    at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:74) 
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1357) 
    at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1289) 
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1239) 
    at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1229) 
    at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:420) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:497) 
    at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:684) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Thread.java:662) 

답변

2

이있다 EHCache는 그 자체와는 거의.

결과 유형 중 하나 (또는 ​​전체)가 null이므로 오류가 발생합니다.

스택 추적에서 판단하면 엔티티에 대한 사용자 정의 로더를 구성했습니다. 결과가 올바르게 선언되지 않았거나 (결과 클래스/반환 별칭) 또는 캐싱과 함께 지원되지 않는 유형 ("select * ..."으로 선언 된)을 자동으로 검색해야 할 가능성이 있습니다.

+0

예. 유형을 지정하지 않은 것은 addScalar입니다. – kgibbon