2011-05-09 13:59:54,125 INFO [STDOUT] Job NMS.SOC_StatPOlicy_1 threw an unhandled Exception:
java.lang.IllegalArgumentException: No SessionFactory specified
at org.springframework.util.Assert.notNull(Assert.java:112)
at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:283)
at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFactoryUtils.java:235)
at org.springframework.orm.hibernate3.HibernateTemplate.getSession(HibernateTemplate.java:475)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)
at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:344)
at com.officeten.nms.task.schedul.dao.impl.RunQuartzDaoImpl.executeSQL(RunQuartzDaoImpl.java:367)
at com.officeten.nms.task.schedul.dao.impl.RunQuartzDaoImpl.updateStatPolicyDate(RunQuartzDaoImpl.java:344)
at com.officeten.nms.task.schedul.service.impl.RunQuartzServiceImpl.updateStatPolicyDate(RunQuartzServiceImpl.java:113)
at com.officeten.nms.task.schedul.QuartzStatPolicyJob.executeInternal(QuartzStatPolicyJob.java:21)
at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
解决方法:
private SessionFactory sessionFactory;
public void setQuartzSssionFactory(SessionFactory sessionFactory) {
this. sessionFactory = sessionFactory;
}
HibernateTemplate hibernateTemplate = new HibernateTemplate(sessionFactory);
List<Object[]> list = hibernateTemplate.executeFind(
new HibernateCallback() {
… …
}
本文针对Spring框架中因未正确配置SessionFactory而导致的异常问题进行详细分析,并提供了解决方案。通过示例代码展示了如何设置SessionFactory及使用HibernateTemplate执行数据库操作。
4965

被折叠的 条评论
为什么被折叠?



