Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EclipseLink » Missing descriptors
Missing descriptors [message #848951] Wed, 18 April 2012 14:39 Go to next message
Christian Eugster is currently offline Christian Eugster
Messages: 134
Registered: July 2009
Location: St. Gallen Switzerland
Senior Member
Hi,

I am using Eclipselink 2.1.3 in an rcp application (based on eclipse 3.7.2 indigo). I have a bundle that contains all entities with assigned annotions (@Entity etc.). The same bundle also has two service components, one is the persistence provider service the other is my connection service, that depends on the persistence provider service. Client bundles use my connection service to obtain entities. The bundle and services are configured as lazy loading. The headers

JPA-PersistenceUnits: ch.eugster.events.persistence
Meta-Persistence: META-INF/persistence.xml

are in the manifes.mf. As classloader I set the bundles classloader in the properties.

When I start the application, the first time a database query is requested, the bundle starts, the persistence provider service is injected to my connection service and my connection service instantiates a entity manager factory and returns an entity manager.

Now my problem: the class descriptors of my persistence.xml seem not to be read by eclipselink. I get an exception (see at the end). I don't know what I am doing wrong. I set the logger to ALL and all what I see is, that the connection to the database is done, but no descriptors are deployed (there is no logging for that). Has anybody an idea, what is going wrong?

I really googled a lot but found no solution for that. I am working now two days to solve this problem, but ...

Thanks a lot!

Christian Eugster

P.S. The stacktrace is:

!ENTRY org.eclipse.ui.workbench 4 0 2012-04-18 20:23:31.233
!MESSAGE Unable to create view ID ch.eugster.events.person.view:
Exception Description: Missing descriptor for [class ch.eugster.events.persistence.model.FieldExtension].
Query: ReadAllQuery(referenceClass=FieldExtension )
!STACK 0
Local Exception Stack:
Exception [EclipseLink-6007] (Eclipse Persistence Services - 2.1.3.v20110304-r9073): org.eclipse.persistence.exceptions.QueryException
Exception Description: Missing descriptor for [class ch.eugster.events.persistence.model.FieldExtension].
Query: ReadAllQuery(referenceClass=FieldExtension )
at org.eclipse.persistence.exceptions.QueryException.descriptorIsMissing(QueryException.java:438)
at org.eclipse.persistence.queries.ObjectLevelReadQuery.checkDescriptor(ObjectLevelReadQuery.java:748)
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:661)
at org.eclipse.persistence.queries.ObjectLevelReadQuery.execute(ObjectLevelReadQuery.java:1036)
at org.eclipse.persistence.queries.ReadAllQuery.execute(ReadAllQuery.java:380)
at org.eclipse.persistence.queries.ObjectLevelReadQuery.executeInUnitOfWork(ObjectLevelReadQuery.java:1122)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2910)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1291)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1273)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1247)
at org.eclipse.persistence.internal.jpa.EJBQueryImpl.executeReadQuery(EJBQueryImpl.java:479)
at org.eclipse.persistence.internal.jpa.EJBQueryImpl.getResultList(EJBQueryImpl.java:714)
at ch.eugster.events.persistence.queries.AbstractEntityQuery.select(AbstractEntityQuery.java:144)
at ch.eugster.events.persistence.queries.AbstractEntityQuery.select(AbstractEntityQuery.java:132)
at ch.eugster.events.persistence.queries.FieldExtensionQuery.selectSearchables(FieldExtensionQuery.java:44)
at ch.eugster.events.person.views.LinkSearcher.addExtendedWidgets(LinkSearcher.java:344)
at ch.eugster.events.person.views.LinkSearcher.<init>(LinkSearcher.java:294)
at ch.eugster.events.person.views.PersonView.createPartControl(PersonView.java:123)
at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:375)
at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:229)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2245)
at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1145)
at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3921)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3918)
at org.eclipse.ui.handlers.ShowViewHandler.openView(ShowViewHandler.java:162)
at org.eclipse.ui.handlers.ShowViewHandler.execute(ShowViewHandler.java:76)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:829)
at org.eclipse.ui.menus.CommandContributionItem.access$19(CommandContributionItem.java:815)
at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:805)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at ch.eugster.events.core.Application.start(Application.java:20)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

Re: Missing descriptors [message #849850 is a reply to message #848951] Thu, 19 April 2012 09:57 Go to previous messageGo to next message
James Sutherland is currently offline James Sutherland
Messages: 1939
Registered: July 2009
Location: Ottawa, Canada
Senior Member

Do you list the classes in the persistence.xml? I would try that.
It could be a class loader issue, in that the descriptors are there, but the classes in them are different than your application because they were loaded with a different loader.

See,
http://wiki.eclipse.org/EclipseLink/Examples/OSGi


James : Wiki : Book : Blog : Twitter
Re: Missing descriptors [message #850595 is a reply to message #849850] Fri, 20 April 2012 02:50 Go to previous message
Christian Eugster is currently offline Christian Eugster
Messages: 134
Registered: July 2009
Location: St. Gallen Switzerland
Senior Member
Hi James,

all classes are listed in persistence.xml and the are in the same bundle as persistence.xml is. Some days before, the whole thing worked without any problems. Then I ported the bundle from 3.6.2 to 3.7.2 and since then I get that error. Any hints? Thank a lot!

Christian
Previous Topic:2.1.0 to 2.3.2
Next Topic:Outer Join with 3 tables is not working
Goto Forum:
  


Current Time: Fri Jul 25 14:27:29 EDT 2014

Powered by FUDForum. Page generated in 0.01491 seconds