iPhoneプロジェクトでsudzcから生成されたacrコードを使用しています。私はすでに不足しているhファイルをインポートし、bodyタグを修正し、すべてが正常に機能しています...任意の関数の最初の呼び出しで。viewDidLoadのように、コード内のいくつかの位置で関数を呼び出します。
TestWsdlService_ManagerService* service = [TestWsdlService_ManagerService service];
[service getAttended:self action:@selector(getEventsHandler:) email: @"testmail@bla.com" password: @"testpass"];
最初の呼び出しはうまく機能します。ロギングが有効になっているので、正しい投稿と正しい応答が表示されます。同じ関数をもう一度呼び出すと、正しい投稿しか表示されませんが、空の応答(xmlなし、何もありません)でエラーが発生します。
2012-08-14 10:26:55.574 Test[1768:11603] nserror Error Domain=CXMLErrorDomain Code=1
"Unknown error" UserInfo=0x6e5fea0 {NSLocalizedDescription=Unknown error}
2012-08-14 10:26:55.580 Test[1768:11603] Error: Unknown error
私もこのようなシングルトンでそれを試しました:
static TestSoapSingleton *sharedInstance = nil;
+ (TestSoapSingleton *)sharedInstance {
if (sharedInstance == nil) {
sharedInstance = [[super allocWithZone:NULL] init];
}
return sharedInstance;
}
- (id)init
{
self = [super init];
if (self) {
self.manager = [TestWsdlApi_ManagerService service];
self.manager.logging = YES;
self.username =@"testmail@blub.com";
self.password = @"test pass";
}
しかし、最後に私は同じエラーを受け取りました。inDataが空(サイズ= 0)であるため、initWithData関数のCXMLDocument.mでエラーがスローされます。また、connectionDidFinishLoading関数のSoapRequest.mでは、receivedDataは空です。
SoapRequest.mをデバッグしようとしたところ、関数の1回目と2回目の呼び出しでdidReceiveResponseが呼び出されましたが、didReceiveDataは最初にのみ呼び出されました。
このように2つのメソッド呼び出しを互いにすぐ後ろで行う場合:
TestWsdlService_ManagerService* service = [TestWsdlService_ManagerService service];
[service getAttended:self action:@selector(getEventsHandler:) email: @"testmail@bla.com" password: @"testpass"];
TestWsdlService_ManagerService* service2 = [TestWsdlService_ManagerService service];
[service2 getAttended:self action:@selector(getEventsHandler:) email: @"testmail@bla.com" password: @"testpass"];
また、問題なく動作します。
誰かが解決策を持っていることを願っています、ありがとう