I successfully invoke WS from my App with WSDL2Objc Generated code. I sent my application to colleagues for testing purpose and they reported me that the App crashes whenever try to connect to WS. The fact is the iPad is behind and HTTP authentication proxy.
From what i understand, the authentication proxy redirect the connection to an HTTP page which shows a message like "Please supply credential"
I have to avoid the crash and simply show an error but i'm not able to understand where the crash happens. I've symbolicated the crash log and the thread wich crash is this one pasted.
Any help is appreciated.
Thread 3 Crashed:
0 CoreFoundation 0x3592d75c CFHash + 124
1 CoreFoundation 0x359d89f4 __CFBasicHashStandardHashKey + 8
2 CoreFoundation 0x359da614 ___CFBasicHashFindBucket_Linear_NoCollision + 40
3 CoreFoundation 0x359dc680 __CFBasicHashAddValue + 684
4 CoreFoundation 0x35932f98 CFDictionarySetValue + 68
5 CFNetwork 0x37516684 URLCredentialStorage::_SetCredentialForProtectionSpace(__CFDictionary*, _CFURLCredential const*, _CFURLProtectionSpace*) + 80
6 CFNetwork 0x37516f4c URLCredentialStorage::setDefaultCredentialForProtectionSpace(_CFURLCredential const*, _CFURLProtectionSpace*) + 340
7 CFNetwork 0x374e0e78 CFURLCredentialStorageSetDefaultCredentialForProtectionSpace + 20
8 CFNetwork 0x3750cbe0 HTTPProtocol::RemoveCredentialPasswordForProtectionSpace(_CFURLCredential const*, _CFURLProtectionSpace*, unsigned char) + 60
9 CFNetwork 0x3750e49c HTTPProtocol::_CFHTTPProtHasCredentialsForChallenge(__CFHTTPMessage*) + 832
10 CFNetwork 0x3750f85a HTTPProtocol::attemptAuthentication(__CFHTTPMessage*) + 170
11 CFNetwork 0x3750f9a4 HTTPProtocol::performHeaderRead() + 280
12 CFNetwork 0x3750fee6 HTTPProtocol::httpReadStreamEvent(unsigned long) + 82
13 CFNetwork 0x37510024 HTTPProtocol::_httpReadStreamCB(__CFReadStream*, unsigned long, void*) + 4
14 CoreFoundation 0x35946a1a _signalEventSync + 70
15 CoreFoundation 0x35947626 _cfstream_shared_signalEventSync + 198
16 CoreFoundation 0x3599ea72 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6
17 CoreFoundation 0x359a0758 __CFRunLoopDoSources0 + 376
18 CoreFoundation 0x359a14e4 __CFRunLoopRun + 224
19 CoreFoundation 0x35931ebc CFRunLoopRunSpecific + 224
20 CoreFoundation 0x35931dc4 CFRunLoopRunInMode + 52
21 Foundation 0x36f747f6 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] + 206
22 Foundation 0x36f67382 -[NSThread main] + 38
23 Foundation 0x36fd95c6 __NSThread__main__ + 966
24 libsystem_c.dylib 0x33af730a _pthread_start + 242
25 libsystem_c.dylib 0x33af8bb4 thread_start + 0
There was a subtle error in the management of the HTTP session. I've fond an hint in this blog EXC_BREAKPOINT strange error In essence the problem was in the didReceiveAuthenticationChallenge of the NSURLConnection. For some reasons and only for a kind of service didReceiveAuthenticationChallenge passed NULL credentials to the connection so as the blogger suggests i tried a retain on those credential strings and the EXC_BREAKPOINT disappeared.