• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Unabled to find an EOClassDescription for objects of class (on application startup)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Unabled to find an EOClassDescription for objects of class (on application startup)


  • Subject: Unabled to find an EOClassDescription for objects of class (on application startup)
  • From: Brendan Duddridge <email@hidden>
  • Date: Tue, 19 Feb 2008 13:21:23 -0700

Hi,

When we bounce our applications, for the first minute or so after the application has finished launching, we get a bunch of exceptions in our logs:

Unabled to find an EOClassDescription for objects of class ca.shopshop.ssmodel.Media.

The entity that has the problem varies for every launch. Sometimes it is Media, sometimes it is PaymentInfo, sometimes it is Merchant, or Product, etc. This seems to also cause any relationships to these entities to come back null in situations where they would (or should) never be null.

After about a minute or so, the application continues to work just fine.

In the Application constructor, we have a method that gets called to setup the database connections. It loops through all the models in the defaultGroup, then sets the connection dictionary information. Then, after that gets done, we load up a bunch of objects into the shared editing context.

It almost seems like we're getting requests before the application is ready to handle them and hasn't finished loading in the models completely.

Is there any way to tell the WO adaptor when we're ready to accept connections? Or perhaps there's something else going wrong here.

Our production environment is WO 5.3 on OS X Server 10.4.x

Here's the full trace:


Exception:
com.webobjects.foundation.NSForwardException for java.lang.IllegalStateException: Unabled to find an EOClassDescription for objects of class ca.shopshop.ssmodel.Media
at com.webobjects.eocontrol.EOGenericRecord.__setClassDescription(EOGenericRecord.java:98)
at com.webobjects.eocontrol.EOGenericRecord.<init>(EOGenericRecord.java:72)
at ca.shopshop.ssmodel.SSGenericRecord.<init>(SSGenericRecord.java:16)
at ca.shopshop.ssmodel._Media.<init>(_Media.java:111)
at ca.shopshop.ssmodel.Media.<init>(Media.java:28)
at sun.reflect.GeneratedConstructorAccessor4.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at com.webobjects.foundation._NSUtilities.instantiateObjectWithConstructor(_NSUtilities.java:594)
at com.webobjects.eoaccess.EOEntityClassDescription.createInstanceWithEditingContext(EOEntityClassDescription.java:207)
at com.webobjects.eoaccess.EODatabaseContext.faultForGlobalID(EODatabaseContext.java:3553)
at com.webobjects.eocontrol.EOObjectStoreCoordinator.faultForGlobalID(EOObjectStoreCoordinator.java:593)
at com.webobjects.eocontrol.EOEditingContext.faultForGlobalID(EOEditingContext.java:3670)
at com.webobjects.eoaccess.EODatabaseContext._objectFaultWithSnapshotRelationshipEditingContext(EODatabaseContext.java:2534)
at com.webobjects.eoaccess.EODatabaseContext._fireDeferredFaultWithSourceObject(EODatabaseContext.java:2575)
at com.webobjects.eoaccess.EOAccessDeferredFaultHandler.createFaultForDeferredFault(EOAccessDeferredFaultHandler.java:45)
at com.webobjects.eocontrol.EOCustomObject.willReadRelationship(EOCustomObject.java:1302)
at com.webobjects.eocontrol._EOMutableKnownKeyDictionary$Initializer$_LazyGenericRecordBinding.valueInObject(_EOMutableKnownKeyDictionary.java:560)
at com.webobjects.eocontrol.EOCustomObject.storedValueForKey(EOCustomObject.java:1736)
at com.webobjects.eoaccess.EODatabaseContext.databaseOperationForObject(EODatabaseContext.java:5005)
at com.webobjects.eoaccess.EODatabaseContext.valuesForKeys(EODatabaseContext.java:6701)
at com.webobjects.eocontrol.EOObjectStoreCoordinator.valuesForKeys(EOObjectStoreCoordinator.java:341)
at com.webobjects.eoaccess.EOQualifierSQLGeneration$_KeyValueQualifierSupport.schemaBasedQualifierWithRootEntity(EOQualifierSQLGeneration.java:418)
at com.webobjects.eoaccess.EOQualifierSQLGeneration$Support._schemaBasedQualifierWithRootEntity(EOQualifierSQLGeneration.java:165)
at com.webobjects.eoaccess.EODatabaseChannel.selectObjectsWithFetchSpecification(EODatabaseChannel.java:209)
at com.webobjects.eoaccess.EODatabaseContext._objectsWithFetchSpecificationEditingContext(EODatabaseContext.java:3205)
at com.webobjects.eoaccess.EODatabaseContext.objectsWithFetchSpecification(EODatabaseContext.java:3346)
at com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsWithFetchSpecification(EOObjectStoreCoordinator.java:539)
at com.webobjects.eocontrol.EOEditingContext.objectsWithFetchSpecification(EOEditingContext.java:4114)
at com.webobjects.eoaccess.EODatabaseContext.objectsForSourceGlobalID(EODatabaseContext.java:4260)
at com.webobjects.eocontrol.EOObjectStoreCoordinator.objectsForSourceGlobalID(EOObjectStoreCoordinator.java:682)
at com.webobjects.eocontrol.EOEditingContext.objectsForSourceGlobalID(EOEditingContext.java:3965)
at com.webobjects.eoaccess.EODatabaseContext._fireArrayFault(EODatabaseContext.java:4427)
at com.webobjects.eoaccess.EOAccessArrayFaultHandler.completeInitializationOfObject(EOAccessArrayFaultHandler.java:70)
at com.webobjects.eocontrol._EOCheapCopyMutableArray.willRead(_EOCheapCopyMutableArray.java:38)
at com.webobjects.eocontrol._EOCheapCopyMutableArray.objectsNoCopy(_EOCheapCopyMutableArray.java:87)
at com.webobjects.foundation.NSMutableSet.addObjectsFromArray(NSMutableSet.java:248)
at ca.shopshop.ssmodel.Product.activeNonExpiredCoupons(Product.java:2041)
at ProductDetailsPage.appendToResponse(ProductDetailsPage.java:54)
at com.webobjects.appserver.WOComponent._appendPageToResponse(WOComponent.java:1388)
at com.webobjects.appserver.WOComponent._generateResponseInContext(WOComponent.java:1356)
at com.webobjects.appserver.WOComponent.generateResponse(WOComponent.java:1351)
at ca.shopshop.sscommon.SSDirectAction.performActionNamed(SSDirectAction.java:119)
at com.webobjects.appserver._private.WOActionRequestHandler._handleRequest(WOActionRequestHandler.java:240)
at com.webobjects.appserver._private.WOActionRequestHandler.handleRequest(WOActionRequestHandler.java:145)
at com.webobjects.appserver.WOApplication.dispatchRequest(WOApplication.java:1306)
at ca.shopshop.sscommon.SSApplication.dispatchRequest(SSApplication.java:385)
at Application.dispatchRequest(Application.java:56)
at com.webobjects.appserver._private.WOWorkerThread.runOnce(WOWorkerThread.java:173)
at com.webobjects.appserver._private.WOWorkerThread.run(WOWorkerThread.java:254)
at java.lang.Thread.run(Thread.java:613)



Thanks,


____________________________________________________________________
Brendan Duddridge | CTO | 403-277-5591 x24 |  email@hidden

ClickSpace Interactive Inc.
Suite L100, 239 - 10th Ave. SE
Calgary, AB  T2G 0V9

http://www.clickspace.com 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Prev by Date: Re: EOF operation ordering
  • Next by Date: OT: Surely they need wo developers
  • Previous by thread: Re: Progressively all threads go into deadlock
  • Next by thread: OT: Surely they need wo developers
  • Index(es):
    • Date
    • Thread