编辑 - 我已将以下问题跟踪到64位与32位架构问题...请参阅我发布的答案,了解我是如何解决的
我使用SudzC为Web服务生成SOAP代码.它们为您提供了一个示例应用程序,我可以在设备和模拟器上成功使用它.
然后我开始构建我的应用程序.我使用空白应用程序模板(启用了CoreData和ARC)将SudzC生成的文件导入到新的XCode项目中.
我启动并运行了第一个SOAP请求 - 一切都在模拟器中运行 - 然后我在设备上运行我的第一个测试(运行iOS 7.02的iPhone 5S).EXC_BAD_ACCESS
每次运行SOAP请求时,设备都会抛出错误.
我已将此跟踪到SoapRequest.m
文件,特别是connectionDidFinishLoading
方法.此方法使用objc_msgSend
调用将SOAP响应数据发送回另一个类(在本例中为我的视图控制器)中的处理程序方法.这是代码:
SoapRequest.m:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSError* error;
if(self.logging == YES) {
NSString* response = [[NSString alloc] initWithData: self.receivedData encoding: NSUTF8StringEncoding];
NSLog(@"%@", response);
}
CXMLDocument* doc = [[CXMLDocument alloc] initWithData: self.receivedData options: 0 error: &error];
if(doc == nil) {
[self handleError:error];
return;
}
id output = nil;
SoapFault* fault = [SoapFault faultWithXMLDocument: doc];
if([fault hasFault]) {
if(self.action == …
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用Sudzc来使用web服务.每当我将WSDL转换为obj-c而没有自动引用计数时,它就可以正常工作.问题是,我们现在正在iOS 5中构建所有应用程序,所有代码都使用ARC.Sudzc现在还允许您创建一个启用了ARC的包,但是当我运行此代码时,它总是返回null.
我尝试调试Sudzc代码,它确实从服务中收到了正确的xml响应.某处某些东西在翻译中丢失了.我尝试将没有ARC的工作Sudzc代码转换为启用了ARC的代码,但是一旦我修复了所有错误,它就会再次返回null.
有没有人遇到这个,知道出了什么问题?节省我的时间,而不必自己调试整个Sudzc代码.
Sudzc(www.sudcz.com)似乎不再是一个正在贡献的项目!
经过一年的没有提交和一些严重的错误,尤其是返回的对象列表,这个有用的工具似乎正在淡入互联网的黑洞.
我想知道是否有人知道替代工具的工作方式与此相同?
或肥皂请求不再是数据传输的首选方法?json是使用休息客户端的更好方法吗?
奖金问题:有没有办法让sudzc处理返回的对象列表