I am using the wsdlpull application in my Qt application (for symbian and Meego).

I'm not an expert in Qt/C++, so I have just added ALL the src files from the project to my app, and it compiles fine and it does work.

However there was ONE little problem with wsdlpull in that is uses curl to do http get/post requests, compiling that for symbian/meego (or any other platform) seemed a little too heavy.

So I'm implementing this post/get methods using QNetworkAccessManager. This is where the problem occurs.

I attach the QNAM finished() signal to my method that handles this post request, but the method never gets called! And it fails with the following error:

RTTI symbol not found for class 'QObject'
But when I create a new QEventLoop object and connect the finished() signal to the quit() slot of the QEventLoop and call loop.exec() it works fine and I can see the response sent to me.

Here is a snippet of my code:

nam = new QNetworkAccessManager(this);

        QEventLoop loop;
        // Execute the event loop here, now we will wait here until readyRead() signal is emitted
        // which in turn will trigger event loop quit.

        QObject::connect(nam, SIGNAL(finished(QNetworkReply*)), this, SLOT(quit()));
        QUrl url("https://svcs.ebay.com/services/search/FindingService/v1");

        QNetworkRequest req(url);

        req.setRawHeader("X-EBAY-SOA-OPERATION-NAME", "getVersion");
        req.setRawHeader("SOAPAction", action);
        req.setHeader(QNetworkRequest::ContentTypeHeader,"text/xml; charset=UTF-8");
        req.setRawHeader("Accept", "text/xml;");
        qDebug() << "Sending post data::::   " << postData;
        reply = nam->post(req, postData);

        qDebug() << "" << reply->readAll();
I should say that from my main method the flow is like this:

main.cpp -> create new instance of wsdlpull -> init wsdlpull -> in wsdlpull post() method instantiate and call my OWN post method.