• 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
Re: Objects don't get initialized sometimes
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Objects don't get initialized sometimes


  • Subject: Re: Objects don't get initialized sometimes
  • From: Chuck Hill <email@hidden>
  • Date: Tue, 3 Nov 2009 12:21:41 -0800

Start here:
http://wiki.objectstyle.org/confluence/display/WO/EOF-Using+EOF-Breaking+EOF

Then
http://www.google.com/search?q=llegalStateException+rowDiffsForAttributes+snapshot


Chuck


On Nov 3, 2009, at 2:02 AM, Gennady Kushnir wrote:

Hello list!
I have an occasionally occurring problem which I can not reproduce but
regularly meet in usage logs.
Editing context fails to save changes and reports:

java.lang.IllegalStateException: rowDiffsForAttributes: snapshot in
com.webobjects.eoaccess.EODatabaseOperation {_dbSnapshot = {}; ..... }
does not contain value for attribute named colorNoWeight with snapshot
key: colorNoWeight

it also happens for different objects mentioning another attributes,
but as I see a common situation is that _dbSnapshot value is empty
dictionary so no matter what attribute is mentioned. Why could this
happen?
Object in question was surely in database, not just created or deleted.


Also sometimes I get NullPointerException when accessing attributes
described as not null, so it seems like object was not initialized on
fetch.

May it be because these objects were fetched or created and saved in
child editing context and after that used (with
EOUtilities.localInstanceOfObject() ) in parent ?

Once I got reproducible malfunction working with temporary EOEditingContext.
EOUtilities.localInstanceOfObject(ec, this) was returning an objects
with all attributes set to null whereas original object was fine and
was stored in database even before app launch.


try {
boolean cache = ec.hasChanges()
if(cache) {
ec = new EOEditingContext();
ec.lock();
AutoItog ai = (AutoItog)EOUtilities.localInstanceOfObject(ec, this);
course = (EduCourse)EOUtilities.localInstanceOfObject(ec, course);
result = calculator().collectRelated(course, ai,
!namedFlags().flagForKey("runningTotal"),true);
} else {
ec.lock();
result = calculator().collectRelated(course, this,
!namedFlags().flagForKey("runningTotal"),true);
}
ec.saveChanges();
if(cache)
result = EOUtilities.localInstancesOfObjects(editingContext(), result);
} catch (RuntimeException e) {
logger.log(LogLevel.WARNING,"Error collecting related", new
Object[] {this,e});
} finally {
ec.unlock();
}
_______________________________________________
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

-- Chuck Hill Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.
http://www.global-village.net/products/practical_webobjects








_______________________________________________
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


  • Follow-Ups:
    • Re: Objects don't get initialized sometimes
      • From: Gennady Kushnir <email@hidden>
References: 
 >Objects don't get initialized sometimes (From: Gennady Kushnir <email@hidden>)

  • Prev by Date: Re: EOModels occasionally loading too slowly?
  • Next by Date: Re: EOModels occasionally loading too slowly?
  • Previous by thread: Objects don't get initialized sometimes
  • Next by thread: Re: Objects don't get initialized sometimes
  • Index(es):
    • Date
    • Thread