Java save problem

I am trying to run a simple example using JPA in EJB via GlassFish. I have the following persistence.xml

 <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="default" transaction-type="RESOURCE_LOCAL"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <jta-data-source>jdbc/wms</jta-data-source> <class>com.xxx.xxx.datamodel.MyTest</class> <exclude-unlisted-classes /> <properties> <property name="eclipselink.target-server" value="SunAS9"/> <property name="eclipselink.logging.level" value="FINEST"/> <property name="eclipselink.target-database" value="Oracle"/> <property name="eclipselink.jdbc.driver" value="oracle.jdbc.OracleDriver" /> <property name="eclipselink.jdbc.url" value="[dbconnectionstring]" /> <property name="eclipselink.jdbc.user" value="user" /> <property name="eclipselink.jdbc.password" value="password" /> </properties> </persistence-unit> </persistence> 

Simple object:

 package com.xxx.xxx.datamodel; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name = "move_task") public class MyTest { private int key; private String description; @Id public int getKey(){ return key; } public void setKey(int key){ this.key = key; } public String getDescription(){ return this.description; } public void setDescription(String description){ this.description = description; } @Override public String toString(){ return "Key: " + key + " Description: " + description; } } 

And finally, the following code to try using the above:

 private void jpaCall() { try{ emf = Persistence.createEntityManagerFactory("default"); em = emf.createEntityManager(); log.info("JPA init complete"); final List<MyTest> list = em.createQuery("select p from MyTest p").getResultList(); for (MyTest current : list) { final String description = current.getDescription(); log.info("JPA: Desc: " + description); } } catch(Exception e){ log.error("Error on JPA", e); } } 

When this runs as part of my EJB initialization, I get the following error:

 java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: Exception Description: Error compiling the query [select p from MyTest p]. Unknown entity type [MyTest]. ... Caused by: Exception [EclipseLink-8034] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.JPQLException Exception Description: Error compiling the query [select p from MyTest p]. Unknown entity type [MyTest]. 

I am not sure what I am doing wrong, and I will be grateful for any help.

Greetings

James

+2
java jpa glassfish
source share
1 answer

Since the above comments suggest that this seems to be a problem with connecting eclipse for glass fish. I have no problem deploying the ear manually.

Thank you all for your help.

James

0
source share

All Articles