我的 Spring 项目中有一个问题,在创建我的 hibernateSession 和 TransactionManager 之后,我初始化了一个扩展PropertyPlaceholderConfigurer的 bean, 我不知道为什么,但在那一刻,我的 hibermnate 会话被毁,无法用于我的 DAO 的其余部分。抛出的错误就是这个。
Caused by: org.hibernate.HibernateException: No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here
有什么建议么?
我正在尝试从数据库中提取一些数据以创建一个属性类并设置为我创建的扩展PropertyPlaceholderConfigurer的类
这是课
public class PropertiesSourceImpl extends PropertyPlaceholderConfigurer{
public ConfigurationSource configurationSource;
public Properties properties;
public void init() {
for (ConfigurationProperty prop : configurationSource.getEnabledConfigurationPropertiesByType(ConfigurationProperty.PropertyType.MAIL)) {
System.out.println(prop);
// properties.setProperty(prop.getPropertyKey(), prop.getPropertyValue());
}
}
public Properties getProperties() {
return properties;
}
@Required
public void setConfigurationSource(final ConfigurationSource configurationSource) {
this.configurationSource = configurationSource;
}
}
这里是我的 bean 定义
<bean id="propertiesSource" class="nl.greenvalley.digipolis.config.PropertiesSourceImpl" init-method="init">
<property name="configurationSource" ref="configurationSource"/>
</bean>