Don't worry about asking too many questions, i know how it is when no one helps you

So just ask freely, if i can, i will help.
So, kSOAP does not create any classes, kSOAP calls the WS address you give it, you write the parameters manually. So basicly kSOAP is the manual way to call a WS operation.
The ksoap2 library contains the following classes:
org.ksoap2.SoapEnvelope;
org.ksoap2.serialization.SoapObject;
org.ksoap2.serialization.SoapSerializationEnvelope;
org.ksoap2.transport.HttpTransport;
which are used to call a WS operation.
Then you must read the SOAP response again manually.
Say you want to call an operation that looks like this:
public boolean login(String username, String password)
Here is the complete code how to call a WS operation using kSOAP:
Maybe seeing the code gives you an ideea how kSOAP works, you can just put this code in your J2ME application and use it, nothing else is needed. No stubs / classes will be generated.
Unfortunately these are the only 2 ways i know how to call a WS operation, and i find using kSOAP more efficient, althought it's slightly more complex.
Feel free to ask if you have any more questions or don't understand something,
Alex.