Я пытаюсь зарегистрировать новый отдел, и я получаю эту ошибкувложенного исключения org.hibernate.HibernateException: Нет сеансы найдены для текущей нити контроллера addDepartment
HTTP Status 500 - Request processing failed; nested exception is org.hibernate.HibernateException: No Session found for current thread
Я гарантирующее это добавляется к моему XML файл и ошибка по-прежнему сохраняется
<tx:annotation-driven transaction-manager="hibernateTransactionManager"/>
<!-- Scans within the base package of the application for @Component classes to configure as beans -->
<context:component-scan base-package="com.xxx.account.*"/>
это метод управления, который бросает исключение
@RequestMapping(value = "/addDepartment", method = RequestMethod.GET)
public ModelAndView addCategory(@ModelAttribute("command") Department department,
BindingResult result) {
Map<String, Object> model = new HashMap<String, Object>();
model.put("department", departmentService.getDepartments());
return new ModelAndView("addDepartment");
}
это полная StackTrace ошибки, которые у меня возникли, когда я пытаюсь получить доступ метод контроллера
org.hibernate.HibernateException: No Session found for current thread
org.springframework.orm.hibernate4.SpringSessionContext.currentSession(SpringSessionContext.java:106) org.hibernate.internal.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:1014) m.chuma.account.dao.DepartmentDaoImpl.getDeparments(DepartmentDaoImpl.java:31)com.chuma.account.service.impl.DepartmentServiceImpl.getDepartments(DepartmentServiceImpl.java:28)
это отдел дао с аннотацией аннотацию @Transactional
@Service("departmentService")
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
public class DepartmentServiceImpl implements DepartmentService{
@Autowired
private DepartmentDao departmentDao;
@Transactional(propagation = Propagation.REQUIRED, readOnly = false)
public void addDepartment(Department department) {
departmentDao.addDepartment(department);
}
Все, кажется, в порядке от моего отладки до сих пор, но ошибка по-прежнему сохраняется, когда я пытаюсь получить доступ к методу контроллера, чтобы вернуть представление. Что может быть неправильным или что мне не хватает?
Вы хотите, чтобы убедиться, что у вас есть что-то вроде '<собственность имя =«current_session_context_class»> нить' в hibernate.cfg.xml или '<подпирать ключ =«hibernate.current_session_context_class»> нить' в определение 'SessionFactoryBean' в вашей конфигурации Spring. –
У меня нет файла hibernate.cfg.xml – Blaze
У вас есть набор свойств Hibernate где-нибудь, либо в конфигурационном файле Spring XML, либо в классе Java, аннотированном с '@ Configuration'? –