我扩展hibernate.EmptyInterceptor并在我的实现中,我想自动装配到一些服务,但他们返回null。我在类上添加了@Component注释。我的代码:自动装配到休眠拦截器
<property name="jpaPropertyMap">
<map>
<entry key="javax.persistence.transactionType" value="JTA" />
<entry key="hibernate.current_session_context_class" value="jta" />
<entry key="hibernate.transaction.manager_lookup_class"
value="com.atomikos.icatch.jta.hibernate3.TransactionManagerLookup" />
<entry key="hibernate.connection.autocommit" value="false" />
<entry key="hibernate.ejb.interceptor" value="com.net.filter.AuditInterceptor"/>
</map>
</property>
和类:
@SuppressWarnings("serial")
@Component
public class AuditInterceptor extends EmptyInterceptor {
@Autowired
private IUserSessionService userSessionService;
我正在尝试向我发布的类注入服务。该服务(IUserSessionService)为空。此服务autowire已在不同的bean中工作。 – lior
@lior我想知道您在上面发布的属性属于哪个bean。这个bean不是使用你的AuditInterceptor bean,而是实例化它自己的,它不会被spring管理,因此不会处理任何注入目标。 –
感谢您的帮助,但我在下面找到了解决方案:http://stackoverflow.com/questions/19217872/injecting-jpas-entity-manager-in-hibernates-emptyinterceptor – lior