#78 new
mat

Error on SDK 4.0 - when [Object createRemote] > "Data Formatters temporarily unavailable " ...

Reported by mat | June 25th, 2010 @ 06:46 PM

Hello,

I have a problem using the method [Object createRemote], I got the following error :
Data Formatters temporarily unavailable, will re-try after a 'continue'. (Not safe to call dlopen at this time.)

It is strange because i have it only on SDK 4.0 (on 3.2 it works perfectly).

More exactly, when debugging, i found out that the error is coming from : (NSObject+ObjectiveRessource.m :90)

  • (SEL) getRemoteSerializeMethod { return (nil == activeResourceSerializeMethod) ? @selector(toXMLElementExcluding:) : activeResourceSerializeMethod; }

Could you help me with this problem ?

It is because this is not supported for SDK 4.0 ?

Thanks for your help.

Comments and changes to this ticket

  • Hippie Hacker

    Hippie Hacker June 28th, 2010 @ 08:27 PM

    • Assigned user set to “Joshua Vickery”
    • Milestone order changed from “0” to “0”

    I'm having a similar problem. I looked at the github, website and mailing list. All appear to be dead for more than a year. Am I missing something? This looks really cool! What happened?

  • Hippie Hacker

    Hippie Hacker June 28th, 2010 @ 08:28 PM

    I see some activity here I must be looking in the wrong places.

  • lukaso

    lukaso July 6th, 2010 @ 06:50 PM

    In the file Serialization/XML/NSDictionary+XMLSerializableSupport.m replace/patch the method below with this version. This will fix the XML version of the code, but not the JSON version, and in a very ugly way. But then what Apple did, is very ugly, so this is at best a workaround. Also, please feel free to improve my code, as I was not trying to do this in the best way.

    
    - (NSString *)toXMLElementAs:(NSString *)rootName excludingInArray:(NSArray *)exclusions
                            withTranslations:(NSDictionary *)keyTranslations andType:(NSString *)xmlType {
    
        NSMutableString* elementValue = [NSMutableString string];
        NSArray * iOS4Exclusions = [NSArray arrayWithObjects:
                                         @"accessibilityFrame",
                                         @"accessibilityHint",
                                         @"accessibilityLabel",
                                         @"accessibilityLanguage",
                                         @"accessibilityTraits",
                                         @"accessibilityValue",
                                         @"isAccessibilityElement",
                                         nil];  
        id value;
        NSString *propertyRootName;
        for (NSString *key in self) {
            // Create XML if key not in exclusion list
            if(![exclusions containsObject:key] && ![iOS4Exclusions containsObject:key]) {
                value = [self valueForKey:key];
                propertyRootName = [[self class] translationForKey:key withTranslations:keyTranslations];
                [elementValue appendString:[value toXMLElementAs:propertyRootName]];
            }
        }
        return [[self class] buildXmlElementAs:rootName withInnerXml:elementValue andType:xmlType];
    }
    

    To explain why the bug is occurring: For some reason which I can't understand at all, in the iOS4 SDK, Apple has decided to add accessibility properties to all NSObjects, when really all they want to make sure is that all UIKit objects have them. They do this via categories. For example, in the UIKit.framework/Headers/UIAccessibility.h they have added the following:

    
    @interface NSObject (UIAccessibility)
    
    ...
    
    @property(nonatomic) BOOL isAccessibilityElement;
    
    ...
    

    Personally, I think this is shocking coding, but maybe I don't understand something.

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

Port of Rails' ActiveResource framework to the iPhone.

Shared Ticket Bins

Attachments

Pages