Jeff said:
No, actually I think I see what he wants to do. Suppose he has a
product - an application that he is selling on the web. He wants
people to be able to pay for that product, then after the transaction
they are allowed to run the setup program, which installs the program
on the local computer. What he does not want is for the purchaser to
get a copy of the setup program that could then be used to install the
program on multiple computers.
Right, I can imagine him wanting that... I just don't think it's very
realistic. It reminds me of people asking, "How can I put images on a
web page but stop people from downloading them?" - ultimately, you
can't. If you can see it, you've downloaded it in some form. Methods of
hiding/obfuscating the information exist (e.g. image-viewing flash
movies that download the info in a non-standard format, descramble it,
then show it in the browser), and they can work to a certain extent. But
ultimately, if you put the info out there on a web page, the user can
get the information.
A more common way of doing it is the requiring of a license key for the
software to run... but in the end, same problem: the information is in
the end-users hands. They can mangle it and prod it and edit it and
disable protection, etc. Obviously not trivial to do for exes, but
crackers do that sort of stuff....
Not likely to work well with a java based product, as unlike typical
MSWindows programs Java doesn't usually litter files all over the hard
drive.
Sorry, not quite sure what you mean there.... What is it that won't work
well with a Java product?
But, he is using jsp as the page technology and is interested
in how to allow a user to run a program from the server without
downloading it -
Well, web applications are running on the server side, not the client,
so that is one solution, but it's not a native .exe, obviously. The user
just can't run a program on their own computer with downloading it
somehow, in some form.
in effect, like streaming audio rather than allowing
the user to download the MP3.
Streaming audio is in effect actually just downloading an audio file
(but playing the file as it goes along and not saving it to the local
disk). There's a stream setup protocol on top (e.g. RTSP for streaming
video) that to some degree hides where the actual file/data is. But if
you know the protocols you can usually locate the actual file and
download it by using wget or curl on the command line, or just pasting
the actual file's url in your browser, then hitting 'save' if you are
offered the option.