Per quanto si può ottenere EntityProvider da JPARepository o da qualche altra parte si può usare JPAContainer come questo:
EntityManager entityManager = getEntityManager(Campaign.class));
MutableLocalEntityProvider<Campaign.class)> provider;
provider = new CachingMutableLocalEntityProvider<Campaign.class)>(Campaign.class), entityManager);
provider.setTransactionsHandledByProvider(false);
JPAContainer<Campaign> container = new JPAContainer<Campaign>(Campaign.class); container.setEntityProvider(EntityProviderUtil.get().getEntityProvider(Campaign.class));
o sono finite semplice
EntityManager entityManager = getEntityManager(Campaign.class));
JPAContainer<Campaign> container = JPAContainerFactory.make(Campaign.class, entityManager)
Beh, si dovrebbe leggere seguente post e decidere se non volevi utilizzare il tuo JPARepository come livello di modello e avvolgerlo in BeanItemContainer, perché JPAContainer ha un bell'aspetto ma ha alcuni problemi di prestazioni dal mio punto di vista.
JPAContainer issues and different approach
MVP pattern and POJO binding with Hibernate
fonte
2013-08-19 06:41:54
Chris, hai trovato una soluzione? Sto lottando con lo stesso problema e attualmente carico un elenco di entità, creo un BeanContainer, aggiungo entità all'interno di un ciclo foreach e lo aggiungo alla tabella. C'è un modo migliore? –
No, ho bisogno di istanziare il JPAContainer da solo. Autowire EntityMangerFactory e quindi passarlo a un nuovo JPAContainer – d0x