Looks like cdi instance is null in this context. Do you have a sample reproducing it?
Le 21 nov. 2017 21:27, "Björn Berg" <[email protected]> a écrit : > Hi, > > I have tried to create a small application based on Meecrowave and JPA > extension. But when I always try to persist an entity, it fails with a > NullPointerException which I cannot really drill down to find the root > cause. > > First I thought injected EntityManager is null but logging the > EntityManager call told me, that it really exists. > PersistenceUnitInfoBuilder and DataSource is produced like described on > http://openwebbeans.apache.org/meecrowave/meecrowave-jpa/index.html > > > The called InstrumentDao looks like this: > @ApplicationScoped > @Jpa(transactional = false) > public class InstrumentDao { > @Inject > @Unit(name = "depot") > private EntityManager em; > > @Jpa > public void save (Instrument instrument) { > em.merge(instrument); > } > … > } > > The entity Instrument is defined like this: > @Entity > @Table(name = "INSTRUMENT") > public class Instrument implements Serializable { > @Id > private String isin; > private String name; > > public Instrument() { > > } > … > } > > Stacktrace is like following: > Caused by: java.lang.NullPointerException > at org.apache.meecrowave.jpa.internal.EntityManagerBean. > destroy(EntityManagerBean.java:95) ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at org.apache.meecrowave.jpa.internal.EntityManagerBean. > destroy(EntityManagerBean.java:29) ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at org.apache.webbeans.component.third.ThirdpartyBeanImpl. > destroy(ThirdpartyBeanImpl.java:113) ~[openwebbeans-impl-2.0.1.jar:2.0.1] > at org.apache.meecrowave.jpa.internal.EntityManagerContext$ > ThreadContext.doDestroy(EntityManagerContext.java:130) > ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at org.apache.meecrowave.jpa.internal.EntityManagerContext$ > ThreadContext.lambda$exit$1(EntityManagerContext.java:140) > ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at java.util.HashMap.forEach(HashMap.java:1280) ~[?:1.8.0_77] > at org.apache.meecrowave.jpa.internal.EntityManagerContext$ > ThreadContext.exit(EntityManagerContext.java:140) > ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at org.apache.meecrowave.jpa.internal.EntityManagerContext$ > ThreadContext.access$300(EntityManagerContext.java:94) > ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at org.apache.meecrowave.jpa.internal.EntityManagerContext. > exit(EntityManagerContext.java:52) ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at > org.apache.meecrowave.jpa.internal.JpaInterceptorBase.inTransaction(JpaInterceptorBase.java:40) > ~[meecrowave-jpa-1.1.0.jar:1.1.0] > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > ~[?:1.8.0_77] > at sun.reflect.NativeMethodAccessorImpl.invoke( > NativeMethodAccessorImpl.java:62) ~[?:1.8.0_77] > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_77] > at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_77] > at > org.apache.webbeans.component.InterceptorBean.intercept(InterceptorBean.java:136) > ~[openwebbeans-impl-2.0.1.jar:2.0.1] > at org.apache.webbeans.intercept.InterceptorInvocationContext.proceed( > InterceptorInvocationContext.java:65) ~[openwebbeans-impl-2.0.1.jar:2.0.1] > at org.apache.webbeans.intercept.DefaultInterceptorHandler.invoke( > DefaultInterceptorHandler.java:139) ~[openwebbeans-impl-2.0.1.jar:2.0.1] > at org.kivio.depot.dao.InstrumentDao$$OwbInterceptProxy0.save(org/ > kivio/depot/dao/InstrumentDao.java) ~[?:?] > at org.kivio.depot.dao.InstrumentDao$$OwbNormalScopeProxy0.save(org/ > kivio/depot/dao/InstrumentDao.java) ~[?:?] > at org.kivio.depot.service.DepotService.addInstrument(DepotService.java:69) > ~[classes/:?] > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > ~[?:1.8.0_77] > at sun.reflect.NativeMethodAccessorImpl.invoke( > NativeMethodAccessorImpl.java:62) ~[?:1.8.0_77] > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_77] > at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_77] > > Someone can give me a hint what I am doing wrong? > > Kind regards, > Björn > >
