quarkus:休眠实体带有注入的Manger

时间:2019-11-28 20:52:31

标签: quarkus

根据Quarkus Documentation,我们可以通过@Inject注入线程安全的EntityManger。

@ApplicationScoped
public class SantaClausService {
    @Inject
    EntityManager em; 

    @Transactional 
    public void createGift(String giftDescription) {
        Gift gift = new Gift();
        gift.setName(giftDescription);
        em.persist(gift);
    }
}

但是,当我这样做时,警告:

No bean is eligible for injection to the injection point

来了。

尝试编译时,出现此错误:

Caused by: javax.enterprise.inject.UnsatisfiedResolutionException:
Unsatisfied dependency for type javax.persistence.EntityManager 
and qualifiers [@Default]

这意味着,我必须通过必须创建并分配给该entityManager的注释来限定注入的EntityManger。使用@PersistenceContext EntityManager em的jee不需要此功能。

在Quarkus中是否已经准备好任何合格的,可以在不发出警告的情况下使用的EntityManager?

1 个答案:

答案 0 :(得分:1)

您的Gift是否带有@Entity注释?

此错误有点误导。 如果您没有@Entity类,您也会收到此错误。

我尝试过...没有@Entity收到错误,然后添加@Entity对所有类进行正常工作。