Java JPA静态编织抛出异常

Java JPA静态编织抛出异常,java,eclipselink,jax-rs,Java,Eclipselink,Jax Rs,为了提高我的应用程序的性能,我尝试使用静态编织。我使用eclipelink/tomcat 当我访问我的服务时,出现以下错误: java.lang.NullPointerException at java.lang.Class.isAssignableFrom(Native Method) at org.eclipse.persistence.mappings.ForeignReferenceMapping.preInitialize(ForeignReferenceMapping

为了提高我的应用程序的性能,我尝试使用静态编织。我使用eclipelink/tomcat

当我访问我的服务时,出现以下错误:

java.lang.NullPointerException
    at java.lang.Class.isAssignableFrom(Native Method)
    at org.eclipse.persistence.mappings.ForeignReferenceMapping.preInitialize(ForeignReferenceMapping.java:809)
    at org.eclipse.persistence.mappings.ObjectReferenceMapping.preInitialize(ObjectReferenceMapping.java:940)
    at org.eclipse.persistence.descriptors.ClassDescriptor.preInitialize(ClassDescriptor.java:3320)
    at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:429)
    at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:406)
    at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:671)
    at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.login(DatabaseSessionImpl.java:633)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:230)
    at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:369)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:151)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:207)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:195)
    at org.employee.resources.DeptResource.getAllDepts(DeptResource.java:102)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
我不确定我做错了什么。谁能帮帮我吗

谢谢你的帮助

编辑:

@Path("/employees")
公共类DeptResource{

private EntityManagerFactory factory;
private EntityManager mgr;

@GET
@Produces({MediaType.APPLICATION_XML})
public List<Dept> getAllDepts(){

try
{
    factory = Persistence.createEntityManagerFactory("employeeModel");
    mgr = factory.createEntityManager();
}
catch (Exception e)
{
    throw new Exception("..............");
}

List<Dept> deptResponseList = new ArrayList<Dept>();    

try {

        TypedQuery<Dept> query = mgr.createQuery("SELECT d FROM Department d", Dept.class);
        Collection<Dept> deptList = query.getResultList();
        Iterator<Dept> i = deptList.iterator();

        while (i.hasNext())
        {
            Department response = new Department();

            Dept dept = (Dept) i.next();

            response.setDeptCode(dept.getDeptCode());
            response.setDeptDesc(dept.getDeptDesc());
            response.setDeptURL("URL got from another source using another web service");
            deptResponseList.add(response);
        }
 } catch (NoResultException ex) {
        mgr.close();
        factory.close();
      throw new Exception("------");
 }

        mgr.close();
        factory.close();

 return deptResponseList; 
}
私营实体管理工厂;
私人机构经理;
@得到
@产生({MediaType.APPLICATION_XML})
公共列表getAllDepts(){
尝试
{
factory=Persistence.createEntityManagerFactory(“employeeModel”);
mgr=factory.createEntityManager();
}
捕获(例外e)
{
抛出新异常(“………”);
}
List deptResponseList=new ArrayList();
试一试{
TypedQuery query=mgr.createQuery(“从部门d中选择d”,部门类);
Collection deptList=query.getResultList();
迭代器i=deptList.Iterator();
while(i.hasNext())
{
部门响应=新部门();
Dept=(Dept)i.next();
response.setDeptCode(dept.getDeptCode());
response.setDeptDesc(dept.getDeptDesc());
setDeptURL(“使用另一个web服务从另一个源获取的URL”);
deptResponseList.add(响应);
}
}捕获(noresultex异常){
经理关闭();
工厂关闭();
抛出新异常(“----”);
}
经理关闭();
工厂关闭();
返回deptResponseList;
}

你能发布你的DeptResource.java源代码吗?我更新了我原来的帖子(现在添加了DeptResource)。WS在尝试创建EntityManagerFactory时引发此错误。代码的第102行是哪个id?。因为在查看源代码后,在创建EntityManagerFactory时不存在可能的NullPointerException。请确认。