NSDictionary objectForKey throws Exception - iphone

I've built an XML parser in Objective-C and the message objectForKey throws an NSException but I don't know why.
aPicture = [[Picture alloc] init];
aPicture.pictureID = [[attributeDict objectForKey:#"id"] integerValue];
Here is the message of the exception that i don't understand:
2010-08-09 21:27:32.223 rh[6375:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Picture setPictureID:]: unrecognized selector sent to instance 0x592e0b0'

After a long search i got my mistake...
I have forgotton to synthezise the pictureID selector.
....

Related

iPhone simulator continues to fail loading a webpage with the error sigabrt

I'm building a web browser from scratch and most everything works except for the most important thing. The browser will fail with the error sigabrt and, while I'm new to iPhone programming, I'm pretty sure this means that I'm not sending the URL correctly.
This is the code for loading the webpage by pressing a button.
- (IBAction)getURLButton:(NSString *)aString {
NSURL *URL = [NSURL URLWithString:aString];
NSURLRequest *URLRequest = [NSURLRequest requestWithURL:URL];
BOOL load = [addressBar webView: (goButton) shouldStartLoadWithRequest:URLRequest navigationType:UIWebViewNavigationTypeFormSubmitted];
if (load) {
error = nil;
[goButton loadRequest:URLRequest];
//currentURLString = [UIWebView stringByEvaluatingJavaScriptFromString:#"document.location.href"];
//It's not in Xcode? It continues to get an error after I write the above statement.
} else {
NSString *message = NSURLErrorFailingURLErrorKey;
NSLog(#"%#",message);
}
}
And this is the error message:
2013-02-14 16:49:28.724 WebBrowser[1265:c07] -[ViewController getURL:]: unrecognized selector sent to instance 0x716f1d0
2013-02-14 16:49:28.727 WebBrowser[1265:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ViewController getURL:]: unrecognized selector sent to instance 0x716f1d0'
I know the errors there somewhere, I just don't know where. Help?
2013-02-14 16:49:28.724 WebBrowser[1265:c07] -[ViewController getURL:]: unrecognized selector sent to instance 0x716f1d0
2013-02-14 16:49:28.727 WebBrowser[1265:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ViewController getURL:]: unrecognized selector sent to instance 0x716f1d0'
If you see your exception you are calling getURL: where as your method name is getURLButton:.

NSURL getFileSystemRepresentation:maxLength

Im having error with this code
NSString *theURL = #"http://www.w3schools.com/xml/cd_catalog.xml";
NSData *theData=[NSData dataWithContentsOfFile:[NSURL URLWithString:theURL]];
NSDictionary *theDic=[XMLReader dictionaryForXMLData:theData error:nil];
error is
2013-02-10 00:39:05.113 MyXml[4139:c07] -[NSURL getFileSystemRepresentation:maxLength:]: unrecognized selector sent to instance 0x7139670
2013-02-10 00:39:05.115 MyXml[4139:c07] *** Terminating app due to uncaught exception
'NSInvalidArgumentException', reason: '-[NSURL getFileSystemRepresentation:maxLength:]: unrecognized selector sent to instance 0x7139670'
*** First throw call stack:
(0x1c96012 0x10d3e7e 0x1d214bd 0x1c85bbc 0x1c8594e 0xad3ee4 0xad3e92 0xad3de2 0xaf2336 0x2bb8 0x15157 0x15747 0x1694b 0x27cb5 0x28beb 0x1a698 0x1bf1df9 0x1bf1ad0 0x1c0bbf5 0x1c0b962 0x1c3cbb6 0x1c3bf44 0x1c3be1b 0x1617a 0x17ffc 0x295d 0x2885)
libc++abi.dylib: terminate called throwing an exception
it is giving error because you are initing NSData with file by help of dataWithContentsOfFile, but actually you are giving URL to the NSData for initing it. because of this your code indirectly calling method of file getFileSystemRepresentation:maxLength: on NSURL ,thats why it is giving error-Unknown selector.
use this dataWithContentsOfURL instead of dataWithContentsOfFile
NSString *theURL = #"http://www.w3schools.com/xml/cd_catalog.xml";
NSData *theData=[NSData dataWithContentsOfURL:[NSURL URLWithString:theURL]];

core data in a ios static library

I created a static library for iOS. The library uses core data to store some objects fetched from the internet.
When I try to use my library in a standard iOS project, it seems like it can't create any instances of core data entities. I have the following error :
-[NSManagedObject initWithDictionary:]: unrecognized selector sent to instance 0x6e5d4e0
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSManagedObject initWithDictionary:]: unrecognized selector sent to instance 0x6e5d4e0'
initWithDictionary is actually a method I call on a core data entity object.
Then I tried to create the managed object model out of the library like shown here : core data in a static library for the iPhone
NSMutableSet *allBundles = [[[NSMutableSet alloc] init] autorelease];
[allBundles addObjectsFromArray: [NSBundle allBundles]];
[allBundles addObjectsFromArray: [NSBundle allFrameworks]];
managedObjectModel = [NSManagedObjectModel mergedModelFromBundles: [allBundles allObjects]];
OR
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:#"Model" withExtension:#"momd"];
managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
but it didn't work. I have the following error when I try to instantiate a class of my library giving it the managed object model :
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[LauncherViewController initWithNibName:managedObjectModel:andKey:]: unrecognized selector sent to instance 0x6b94db0'
If I try this : core data in a static library for the iPhone , I get this error :
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'
Please help me, I really don't know what to do anymore...

error with label.text and NSNumber

I would like to do this:
I have a dictionary like this:
[myMutableDictionary setValue:myNSNumber forKey:#"myKey"];
myNSNumber is an NSNumber.
myCell.label.text = [self.myMutableDictionary objectForkey#"myKey"];
I have an error when I assign the number stored in my dictionary to my label in myCell.
The error is:
je suis la 2011-05-02 15:01:01.264 []
-[NSCFNumber isEqualToString:]: unrecognized selector sent to instance
0x225d00 2011-05-02 15:01:01.319 []
*** Terminating app due to uncaught exception
'NSInvalidArgumentException', reason:
'-[NSCFNumber isEqualToString:]:
unrecognized selector sent to instance
0x225d00'
NSNumber is not an NSString and the text of the label needs to set to an NSString.
NSNumber *num = (NSNumber*)[self.myMutableDictionnary objectForkey#"myKey"];
myCell.label.text = [num stringValue];
Here you can do it by 2 ways
first is myCell.label.text = [[self.myMutableDictionnary objectForkey#"myKey"] stringValue];
second is myCell.label.text = [NSString stringWithFormat:#"%d",[self.myMutableDictionnary objectForkey#"myKey"]] ;

confused as how to use componentsSeparatedByString on iphone

after nsXml pasring value of my NSMutable array AB
=\n\n\n\thttp://xyz.com/uploads/resto_6298__20091209#1621_250.JPG\n\thttp://xyz.com/uploads/resto_6298__200912099_2_250.JPG\n"
now i am doing this to make this url working
NSString *sw=AB;
NSArray *strings = [sw componentsSeparatedByString: #"\n\t"];
NSLog(#"what I have %#",strings);
but my app always crash and i am getting this error
[NSCFArray componentsSeparatedByString:]: unrecognized selector sent to instance 0x1b28b0
2010-10-05 10:17:31.382 Wat2Eat[2311:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSCFArray componentsSeparatedByString:]: unrecognized selector sent to instance 0x1b28b0'
how to parse this AB so that i can extract exact URL
NSString *sw=AB;
AB is an NSMutableArray?
the compiler should print a warning if you try to do this. You tried to assign an NSArray to an NSString. This will not work.
Did you mean NSString *sw = [AB objectAtIndex:foo]; ?