[jboss-user] [EJB 3.0] - Can't inject PersistenceContext, NullPointerException when u
TristanS
do-not-reply at jboss.com
Wed Dec 31 09:57:14 EST 2008
I have been working through a JBoss (5.0.0.CR2) example using the tutorial at http://www.netbeans.org/kb/55/ejb30-jboss.html#Exercise_5 (however using Netbeans 6.5).
I have an entity set up and upon deployment it is creating the table on the database. My problem is when I try to use a SLSB as a facade to retrieve entities back from the database. The generated code is as follows:
| @Stateless
| public class CustomerFacade implements CustomerFacadeLocal {
| @PersistenceContext
| private EntityManager em;
|
| public void create(Customer customer) {
| em.persist(customer);
| }
|
| public void edit(Customer customer) {
| em.merge(customer);
| }
|
| public void remove(Customer customer) {
| em.remove(em.merge(customer));
| }
|
| public Customer find(Object id) {
| return em.find(Customer.class, id);
| }
|
| public List<Customer> findAll() {
| return em.createQuery("select object(o) from Customer as o").getResultList();
| }
|
| }
Unfortunately when I run this code, I get a NullPointerException upon usage of em because the PersistenceContext isn't being injected (I presume). This I'm sure is a config error, however I have also tried @PersistenceUnit(unitName = "PrototypeCRMSystem-ejbPU")
| private EntityManagerFactory emf;
|
| private EntityManager em = emf.createEntityManager(); which gives the same problem when accessing emf.
My persitence.xml is as follows:
<?xml version="1.0" encoding="UTF-8"?>
| <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
| <persistence-unit name="PrototypeCRMSystem-ejbPU" transaction-type="JTA">
| <provider>org.hibernate.ejb.HibernatePersistence</provider>
| <jta-data-source>java:/OracleDS</jta-data-source>
| <properties>
| <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle9iDialect"/>
| <property name="hibernate.hbm2ddl.auto" value="update"/>
| <property name="hibernate.show_sql" value="true" />
| </properties>
| </persistence-unit>
| </persistence>
|
Am I missing something configuration-wise or is there a problem?
Thanks
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4199064#4199064
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4199064
More information about the jboss-user
mailing list