Your toolchain is supposed to generate both a .JAR file and a .JAD file.
As per the J2ME specifications, phones don't always have to allow the installation of the .JAR file.
You should deploy the .JAD file instead and make sure the .JAR is in an accessible location (handset storage or mobile network).
The .JAD file is supposed to contain the location of the .JAR file so the handset MIDlet installer can retrieve it.
EDIT:
There are a number of reasons why a phone would refuse to install a .JAD file.
It could be just plain wrong and not compliant with the MIDP specifications.
It could be signed by a certificate the phone doesn't like
It could use the wrong version of the J2ME configuration or profile.
It could contain permissions that the phone doesn't recognize
...
The best way to have your question answered would be to add the content of the .JAD file, the content of the manifest file packaged inside the .JAR file and the brand and model name of the handset you are trying to install your application on.