There are two approaches to making a web page interactive:
is a programming language whose programs browsers can run
allows browser to download and run programs as needed instead of
downloading and configuring a certain plug-in and then downloading
the program files
a version of a different program that is embedded in your
browser
adds functionality to the browser, allowing it to display files it
otherwise couldn't handle
used to create interactions or animations as specialized or
sophisticated as the source program
A program that exists on the server. Information is sent from
your page (usually from a form) to the server where it is acted on
and then the results are sent back to the page. Typically used to
search databases and return text or an html page, and not to
change the existing page dynamically. Appropriate where you have a
large amount of data that you want available for searching (e.g.
text summaries of an audio/video collection with call number of
original tapes). Not appropriate for typical "interactive"
language learning exercises.
designed to control elements and interact with form input on a
web page, rather than create a separate special object
(programmable environment) embedded in the page
allows programs to be included with the page, rather than as a
separate downloaded file.
JavaScript can control browser behaviour and content but cannot draw graphics or perform networking. Java has little control over the browser, but can do graphics and networking.