Hi all,
after following the excellent reference documentation to deploy the project on Websphere 6.1 I have my project up and running.
Most of the stuff is working now, e.g. Entities/Richfaces Datatables ... but I still have troubles with the EntityManager when using with native Queries.
In one of my beans I am injecting the EntityManager wtih:
@PersistenceContext(type = PersistenceContextType.EXTENDED, unitName = "AudioConference") EntityManager em;
Then I perform a NativeQuery:
Query seqQuery = em.createNativeQuery("select mac_user.audio_conf_tid_seq.nextval AS TID from dual");
This will give me a NPE.
When I inject the entity Manager the following way, it works:
@In(value="entityManager") EntityManager em;
I have two XA datasources, one to Oracle and one to SQL 2005.
All DB access via normal entities works fine.
This is a snippet of my components.xml:
<persistence:managed-persistence-context name="entityManager" auto-create="true" entity-manager-factory="#{oracleManagerFactory}"/> <persistence:entity-manager-factory name="oracleManagerFactory" persistence-unit-name="AudioConference"/> <persistence:managed-persistence-context name="msSqlEntityManager" auto-create="true" entity-manager-factory="#{mssqlManagerFactory}"/> <persistence:entity-manager-factory name="mssqlManagerFactory" persistence-unit-name="AudioConferenceMsSql"/> <ui:entity-converter name="standardEntityConverter" entity-loader="#{standardEntityLoader}" /> <ui:jpa-entity-loader name="standardEntityLoader" entity-manager="#{entityManager}" /> <ui:entity-converter name="msSqlEntityConverter" entity-loader="#{msSqlEntityLoader}" /> <ui:jpa-entity-loader name="msSqlEntityLoader" entity-manager="#{msSqlEntityManager}" />
Any ideas why I am getting the NPE with injecting the entityManager via the PersistenceContext?
Also what is the difference in the two methods?
Thanks for your help,
Wolfgang