-1
我使用karaf 4.0.5
和休眠4.2.15
而我想在我的BaseDao類中獲得EntityManager
。 如果我想在我的服務如何在Karaf 4.0.5的BaseDao中獲得entityManager?
<bean id="subscriberService" class="domain.payment.impl.subscriber.SubscriberServiceImpl" scope="singleton"
init-method="init">
<tx:transaction method="*" />
</bean>
和
類@PersistenceContext(unitName="payment")
private EntityManager entityManager;
得到EntityManager
我得到的EntityManager normaly。
但是,如果我試圖在另一個類
public class BaseJpaDao<E> implements BaseDao<E>{
protected Class<?> entityClass;
@PersistenceContext(unitName="payment")
private EntityManager entityManager;
public BaseJpaDao(Class<?> entityClass) {
this.entityClass = entityClass;
}
@Override
public E persist(E e) {
entityManager.persist(e);
return e;
}
我entityManager
是NULL;
我試圖
<bean id="baseDao" class="domain.payment.impl.base.BaseJpaDao" scope="singleton"
init-method="init">
<tx:transaction method="*" />
</bean>
但它不能幫助。
在Spring項目中工作正常,但在OSGi中我有很多問題。
真的只有從我可以得到的服務entityManager
?
不知道這是否是問題,但它是值得一試創建一個空的構造函數,看看它是否會工作。 –