Google App Engine, spring mvc 및 spring jpa dao를 사용하고 있습니다. 내 응용 프로그램에서 세션이 파괴되면 데이터베이스에서 항목을 삭제하고 싶습니다. 그래서 나는 실제로 봄 dao 빈을 통해 데이터베이스에서 항목을 삭제하고자하는 세션 리스너를 사용하고 있습니다.Spring Mvc의 Session Listener Google 응용 프로그램 엔진
여기 세션 리스너
@Override
public void sessionDestroyed(HttpSessionEvent se) {
//get entry from session and now remove entry from database
getMyDao(se).delete(entry);
}
private MyDao getMyDao(HttpSessionEvent sessionEvent){
HttpSession session = sessionEvent.getSession();
ApplicationContext ctx =
WebApplicationContextUtils.
getWebApplicationContext(session.getServletContext());
MyDao dao =
(MyDao) ctx.getBean("myDao");
return dao;
}
내가
java.lang.NullPointerException이 삭제하려고 할 때 나는 아래의 오류가 발생하고 내 코드입니다 : 없음 API 환경이 스레드에 등록되지 않습니다. com.google.appengine.api.datastore.DatastoreApiHelper.getCurrentAppIdNamespace에서 com.google.appengine.api.datastore.DatastoreApiHelper.getCurrentAppId (DatastoreApiHelper.java:108) (DatastoreApiHelper.java:118) com.google에서 에서 . appengine.api.datastore.Query. (Query.java:112) at org.datanucleus.store.appengine.query.DatastoreQuery.validate (DatastoreQuery.java:794) at org.datanucleus.store.appengine.query.DatastoreQuery 내가 호출 할 때 API 환경이 등록되지 않는 이유 org.datanucleus.store.appengine.query.JPQLQuery.performExecute에서 .performExecute (DatastoreQuery.java:225) (JPQLQuery.java:80)
어느 한 말해 주시겠습니까 세션 리스너로부터?