I have an application with a Model and a View project. The bean in the View 
project is having trouble finding the EJB Enity in the Model project. The 
binding   DepartmentsBean.departments is failing with this error:

javax.el.ELException: javax.faces.el.EvaluationException: javax.el.ELException: 
Error reading 'departments' on type ice.data.table.view.DepartmentsBean

I had the EXACT same error when I was deploying to OC4J, but the problem was 
that my Model project was not deployed as an EJB Jar. That is not the problem 
in this case since I am now using en EJB Jar.

Also, I have tested my DB connection with a plain JSP manually querying a table 
in the DB, so I know my connection configuration is good.

This is my persistence.xml:

<?xml version="1.0" encoding="windows-1252" ?>
  | <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";
  |              version="1.0" xmlns="http://java.sun.com/xml/ns/persistence";>
  |   <persistence-unit name="Model">
  |   <jta-data-source>java:/hr</jta-data-source>
  |   <class>ice.data.table.model.Departments</class>
  |   <class>ice.data.table.model.DepPublicFacade</class>
  |   <class>ice.data.table.model.DepPublicFacadeLocal</class>
  |   <class>ice.data.table.model.DepPublicFacadeBean</class>
  |   </persistence-unit>
  | </persistence>
  | 

This is my entity:


  | @Entity
  | @NamedQuery( name = "Departments.findAll", 
  |     query = "select o from Departments o" )
  | public class Departments implements Serializable
  | {
  |     @Id
  |     @Column( name="DEPARTMENT_ID", nullable = false )
  |     private Long departmentId;
  |     @Column( name="DEPARTMENT_NAME", nullable = false )
  |     private String departmentName;
  |     @Column( name="LOCATION_ID" )
  |     private Long locationId;
  |     @Column( name="MANAGER_ID" )
  |     private Long managerId;
  | 
  |     public Departments()
  |     {
  |     }
  | 
  |     public Long getDepartmentId()
  |     {
  |             return departmentId;
  |     }
  | 
  |     public void setDepartmentId( Long departmentId )
  |     {
  |             this.departmentId = departmentId;
  |     }
  | 
  |     public String getDepartmentName()
  |     {
  |             return departmentName;
  |     }
  | 
  |     public void setDepartmentName( String departmentName )
  |     {
  |             this.departmentName = departmentName;
  |     }
  | 
  |     public Long getLocationId()
  |     {
  |             return locationId;
  |     }
  | 
  |     public void setLocationId( Long locationId )
  |     {
  |             this.locationId = locationId;
  |     }
  | 
  |     public Long getManagerId()
  |     {
  |             return managerId;
  |     }
  | 
  |     public void setManagerId( Long managerId )
  |     {
  |             this.managerId = managerId;
  |     }
  | }
  | 

This is my facade:


  | @Stateless( name="DepPublicFacade" )
  | public class DepPublicFacadeBean implements DepPublicFacade, 
DepPublicFacadeLocal
  | {
  |     @PersistenceContext( unitName="Model" )
  |     private EntityManager em;
  | 
  |     public DepPublicFacadeBean()
  |     {
  |     }
  | 
  |     public Object mergeEntity( Object entity )
  |     {
  |             return em.merge(entity);
  |     }
  | 
  |     public Object persistEntity( Object entity )
  |     {
  |             em.persist(entity);
  |             return entity;
  |     }
  | 
  |     /** <code>select o from Departments o</code> */
  |     public List<Departments> queryDepartmentsFindAll()
  |     {
  |             return 
em.createNamedQuery("Departments.findAll").getResultList();
  |     }
  | 
  |     public void removeDepartments( Departments departments )
  |     {
  |             departments = em.find(Departments.class, 
departments.getDepartmentId());
  |             em.remove(departments);
  |     }
  | }
  | 

This is my bean from the View project:


  | public class DepartmentsBean
  | {
  |     private DepPublicFacade model;
  |     
  |     public DepartmentsBean()
  |     {
  |         try
  |             {
  |                 final Context context = getInitialContext();
  |                 model = (DepPublicFacade)context.lookup("DepPublicFacade");
  |             }
  |             catch (Exception ex)
  |             {
  |                 ex.printStackTrace();
  |             }
  |     }
  |     
  |     public List getDepartments()
  |     {
  |                     return model.queryDepartmentsFindAll();
  |     }
  |     
  |     private static Context getInitialContext() throws NamingException
  |     {
  |                     // Get InitialContext for Embedded OC4J
  |                     // The embedded server must be running for lookups to 
succeed.
  |                     return new InitialContext();
  |     }
  | }
  | 

Any help or pointers to information would be appreciated. I am at a loss here.

Thanks,
Kurzweil4



View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4070906#4070906

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4070906
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to