Do you mean that it works on the emulator, but not on the phone? "Application not supported" usually means that you have the profile field in the manifest set to MIDP-2.0... did you download the version 2 Wireless Toolkit from Sun? The 7210 is an MIDP-1.0 device, and the profile string in the manifest must reflect this. Normally, the emulator will not perform the same checks as the real device.
The fact is, the emulator runs the application as a local file on a PC just fine, but does not load it when it is offered as a download from a server(gives "application not supported error"). In case of a download, the emulator responds in the same way as the real phone - "application not supported" (both emulator and the real phone respond with "application not supported" error when "download" option is selected).
as a matter of fact, I just checked on the manifest file, and it DID actually state MIDP 2.0. I can still not quite understand the fact how the 7210 SDK executes the app from a local machine, but fails to load it from a server.
If that's just an "imperfection"/bug in the SDK, does it mean that when I'm starting a new project with the WirelessToolKit I have to set "MIDP 1.0" to make it work properly?
This is not a bug in the emulator, it is by design.
There are several different ways of getting the emulator to run a MIDlet. In the usual way, the emulator does not perform all the same checks as the real phone. This means you can run an application with the wrong version, mismatched details between JAD and manifest, the wrong JAR size in the JAD, a JAR larger than 64k, and so on. It is intended to make debugging easier, by saving you from worrying about too many details.
When you run the emulator in "provisioning" mode, it does perform the same checks as the phone, so will fail if the JAR is too large, or if the JAD and/or manifest are not correct. This enables you to use the emulator to test deployment and get exactly the same results as you would with the real thing.
To deploy an application to an MIDP-1.0 device, the profile specification in the manifest must read MIDP-1.0. By specifying MIDP-2.0 in your manifest, you are telling the phone that your application requires this specification. The 7210 does not support MIDP-2.0, so it (correctly) rejects the application.
The WTK2.0 defaults to inserting MIDP-2.0 in the manifest, as it is intended for developing MIDP-2.0 applications. To develop for MIDP-1.0, you can use the WTK1.0.4; if you use WTK2.0, you must set the correct profile, and not use any MIDP-2.0-specific features.