<p>Is it possible to upload a file from a client's computer to the server through a web service? The client can be running anything from a native desktop app to a thin ajax client.</p>

I'm not a master in "webservice", but if you develop the webservice (and the client), you always can convert the binary file to
BASE64
in the client (can do in java... and i soupose in ajax too) and transfer as "string", in the other side, in the webservice encode to binary from BASE64...
It's one idea, that's work, but maybe not "correct" in all enviroment.