The only thing that comes to mind is a race condition clearing and re-populating the class description cache or something with _NSUtilities._classWithPartialName. I think that is what the attribute uses to get the class.
On Jun 29, 2011, at 4:06 PM, Kieran Kelleher wrote:
> ERPrototypes is in the classpath.
>
> I tried ERAttributeExtension and same error after running for a while.
>
> BTW, seems to only happen when:
>
> Multiple threads creating instances of the same Entity where the editing
> contexts share the same parent OSC.
>
> Might be a WO 5.4.3 bug
>
> Also, the attribute in question looks like this:
> {
> columnName = isfactorialprime;
> name = isFactorialPrime;
> prototypeName = boolean;
> userInfo = {
> "_EntityModeler" = {documentation =
> "http://en.wikipedia.org/wiki/Factorial_prime"; };
> };
> },
>
> ..... and the ERPrototypes proto (boolean), for reference, looks like this:
> {
> adaptorValueConversionMethodName = toString;
> columnName = "";
> externalType = VARCHAR;
> factoryMethodArgumentType = EOFactoryMethodArgumentIsNSString;
> name = boolean;
> valueClassName = "java.lang.Boolean";
> valueFactoryMethodName = valueOf;
> width = 5;
> },
>
>
> On Jun 29, 2011, at 6:32 PM, Ramsey Gurley wrote:
>
>> I suspect it may have something to do with the use of the incompletely
>> deprecated _valueClassName in WO 5.4.3's EOAttribute. EOAttribute still
>> uses it, sometimes. I don't remember the issue I was having, but that is
>> something I changed in ERAttributeExtension's version of this method. You
>> could try running with that to see if it makes any difference.
>>
>> Generally when I've seen an error here, it's a missing prototype. In one
>> case, I hunted for hours only to discover I forgot to import ERPrototypes
>> (^_^) I don't know why your app would forget it occasionally though.
>>
>> Ramsey
>>
>> On Jun 29, 2011, at 3:08 PM, Kieran Kelleher wrote:
>>
>>> Anyone ever seen an error like this before? Not reproducible easily - can
>>> happen during heavy EOF save activity across multiple threads in WO 5.4.3.
>>> I have failed to make the same error happen with same code in WO 5.3.3.
>>>
>>> IllegalStateException: adaptorValueType: unable to load class named
>>> 'Boolean' for attribute isFactorialPrime on entity ResultItem
>>> at
>>> com.webobjects.eoaccess.EOAttribute.adaptorValueType(EOAttribute.java:2216)
>>> at
>>> com.webobjects.eoaccess.EOAttribute.adaptorValueClass(EOAttribute.java:2254)
>>> at
>>> com.webobjects.eoaccess.EOEntityClassDescription._enforcedKVCNumberClassForKey(EOEntityClassDescription.java:548)
>>> at
>>> er.extensions.eof.ERXEntityClassDescription._enforcedKVCNumberClassForKey(ERXEntityClassDescription.java:1266)
>>> at
>>> com.webobjects.eocontrol.EOGenericRecord._otherStorageBinding(EOGenericRecord.java:146)
>>> at
>>> er.extensions.eof.ERXGenericRecord._otherStorageBinding(ERXGenericRecord.java:231)
>>> ... skipped 2 stack elements
>>> at
>>> com.webobjects.eocontrol.EOKeyValueCoding$DefaultImplementation._createStoredKeySetBindingForKey(EOKeyValueCoding.java:350)
>>> at
>>> com.webobjects.eocontrol.EOCustomObject._createStoredKeySetBindingForKey(EOCustomObject.java:1744)
>>> at
>>> com.webobjects.eocontrol.EOGenericRecord._storedKeySetBindingForKey(EOGenericRecord.java:215)
>>> at
>>> com.webobjects.eocontrol.EOCustomObject.takeStoredValueForKey(EOCustomObject.java:1662)
>>> at
>>> er.extensions.eof.ERXGenericRecord.takeStoredValueForKey(ERXGenericRecord.java:1402)
>>> at wowodc.eof._ResultItem.setIsFactorialPrime(_ResultItem.java:114)
>>> at wowodc.eof.ResultItem.awakeFromInsertion(ResultItem.java:38)
>>> at
>>> com.webobjects.eocontrol.EOEditingContext.insertObjectWithGlobalID(EOEditingContext.java:2871)
>>> at er.extensions.eof.ERXEC.insertObjectWithGlobalID(ERXEC.java:886)
>>> at
>>> com.webobjects.eocontrol.EOEditingContext.insertObject(EOEditingContext.java:2889)
>>> at er.extensions.eof.ERXEC.insertObject(ERXEC.java:896)
>>> at
>>> er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:322)
>>> at
>>> er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:298)
>>> at
>>> er.extensions.eof.ERXEOControlUtilities.createAndInsertObject(ERXEOControlUtilities.java:284)
>>> at
>>> wowodc.background.tasks.T04MultiThreadedEOFTask$ChildPrimeTask.run(T04MultiThreadedEOFTask.java:266)
>>> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>> ... skipped 1 stack elements
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> http://lists.apple.com/mailman/options/webobjects-dev/rgurley%40smarthealth.com
>>>
>>> This email sent to [email protected]
>>
>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list ([email protected])
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net
>
> This email sent to [email protected]
--
Chuck Hill Senior Consultant / VP Development
Come to WOWODC this July for unparalleled WO learning opportunities and real
peer to peer problem solving! Network, socialize, and enjoy a great
cosmopolitan city. See you there! http://www.wocommunity.org/wowodc11/
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
