Delegate method NSURLConnection: didReceiveData is not called ... Why? (iPhone SDK)

Sample code:

-(void)ConnectWithRequest:(NSMutableURLRequest*)req{

if(![req isEqual:theRequest]){
    [req retain];
    [theRequest release];
    theRequest = req;
}

XMLConnection = [[XMLWebServiceConnection alloc]init];  
Connection=[[NSURLConnection alloc]initWithRequest:theRequest delegate:XMLConnection];
}

      

In the XMLConnection class, I have implemented the delegation methods NSURLConnection

:

-(id)init{

    if(self=[super init]){
        receivedData = [[NSMutableData alloc]init]; //member of a class
    }
    return self;
}


- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error{
    [receivedData release];
}

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{
    [receivedData setLength:0]; 
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
    [receivedData appendData:data]; 
}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection{

    NSString *theXML = [[NSString alloc] initWithBytes: [receivedData mutableBytes] length:[receivedData length] encoding:NSUTF8StringEncoding];

    NSLog(@"\nResponse printed :\n\n\n %@\n",theXML);

    [theXML release];

}

      

when i run this code,

method:

connection:(NSURLConnection *)connection didReceiveData:(NSData *)data

      

not called, why is this happening? How to solve this problem?


thank

+1


source to share





All Articles