1
votes

I am new to JPA 2.0. I am using eclipse juno to create a JPA project(eclipseLink 2.0.2).

When creating the JPA Project i am getting an error as

An internal error occurred during: "JPA Facet File Change Event Handler".

On checking the log i get this:

java.lang.NoClassDefFoundError: org/eclipse/persistence/jpa/jpql/AbstractJPQLQueryHelper at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:632) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:607) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:568) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:492) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:465) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395) at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:461) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) at org.eclipse.jpt.jpa.eclipselink.core.internal.context.persistence.EclipseLink2_0PersistenceXmlContextNodeFactory.buildPersistenceUnit(EclipseLink2_0PersistenceXmlContextNodeFactory.java:33) at org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericPersistence.buildPersistenceUnit(GenericPersistence.java:179) at org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericPersistence.initializePersistenceUnits(GenericPersistence.java:137) at org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericPersistence.(GenericPersistence.java:55) at org.eclipse.jpt.jpa.core.internal.context.persistence.AbstractPersistenceXmlContextNodeFactory.buildPersistence(AbstractPersistenceXmlContextNodeFactory.java:41) at org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericPersistenceXml.buildPersistence(GenericPersistenceXml.java:163) at org.eclipse.jpt.jpa.core.internal.jpa1.context.persistence.GenericPersistenceXml.(GenericPersistenceXml.java:68) at org.eclipse.jpt.jpa.core.internal.AbstractJpaFactory.buildPersistenceXml(AbstractJpaFactory.java:202) at org.eclipse.jpt.jpa.core.internal.jpa1.context.GenericRootContextNode.buildPersistenceXml(GenericRootContextNode.java:157) at org.eclipse.jpt.jpa.core.internal.jpa1.context.GenericRootContextNode.buildPersistenceXml(GenericRootContextNode.java:95) at org.eclipse.jpt.jpa.core.internal.jpa1.context.GenericRootContextNode.(GenericRootContextNode.java:62) at org.eclipse.jpt.jpa.core.internal.AbstractJpaFactory.buildRootContextNode(AbstractJpaFactory.java:195) at org.eclipse.jpt.jpa.core.internal.AbstractJpaProject.buildRootContextNode(AbstractJpaProject.java:276) at org.eclipse.jpt.jpa.core.internal.AbstractJpaProject.(AbstractJpaProject.java:251) at org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLinkJpaProjectImpl.(EclipseLinkJpaProjectImpl.java:26) at org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLinkJpaFactory.buildJpaProject(EclipseLinkJpaFactory.java:62) at org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLink2_0JpaFactory.buildJpaProject(EclipseLink2_0JpaFactory.java:84) at org.eclipse.jpt.jpa.eclipselink.core.internal.EclipseLink2_0JpaFactory.buildJpaProject(EclipseLink2_0JpaFactory.java:1) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProject(InternalJpaProjectManager.java:616) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProject(InternalJpaProjectManager.java:608) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.buildJpaProject(InternalJpaProjectManager.java:601) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.addJpaProject(InternalJpaProjectManager.java:582) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager.checkForJpaFacetTransition_(InternalJpaProjectManager.java:760) at org.eclipse.jpt.jpa.core.internal.InternalJpaProjectManager$FacetFileChangeEventHandlerCommand.execute(InternalJpaProjectManager.java:750) at org.eclipse.jpt.common.core.internal.utility.command.CommandJobCommandAdapter.execute(CommandJobCommandAdapter.java:39) at org.eclipse.jpt.common.core.internal.utility.command.JobCommandJob.run(JobCommandJob.java:42) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) Caused by: java.lang.ClassNotFoundException: org.eclipse.persistence.jpa.jpql.AbstractJPQLQueryHelper at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 43 more

I cannot find what this error and log refer to. Any help would be great as i am struggling at this point.

Thanks in Advance.

2
There is a similar issue here: stackoverflow.com/questions/11631371/… Thought it might help.Fahd

2 Answers

1
votes

I faced the same issue.

Based on this bug report on Eclipse - NoClassDefFoundError with JPA projects I had to uninstall the Hibernate Tools plugin to fix the error.

Looks like the base Eclipse doesn't have an issue, but if you have installed JBoss Tools plugins, they provide a non-compatible version of JPA classes, and that causes the issue.

0
votes

I m also facing the same issue

Error is :

An internal error occurred during: "JPA Facet File Change Event Handler"

To Solve :

We need to uninstall the hibernate tools.
Our Eclipse doesn't have any problem but tool which we installed dynamically it have issue so better is to remove that tools.