Compile
and run the
JabberServer
and
JabberClient
programs in this chapter. Now edit the files to remove all of the buffering for
the input and output, then compile and run them again to observe the results.
Create
a server that asks for a password, then opens a file and sends the file over
the network connection. Create a client that connects to this server, gives the
appropriate password, then captures and saves the file. Test the pair of
programs on your machine using the
localhost
(the local loopback IP address
127.0.0.1
produced by calling
InetAddress.getByName(null)).
Modify
the server in Exercise 2 so that it uses multithreading to handle multiple
clients.
Modify
JabberClient
so that output flushing doesn’t occur and observe the effect.
Build
on
ShowHTML.java
to produce an applet that is a password-protected gateway to a particular
portion of your Web site.
(More
challenging) Create a client/server pair of programs that use datagrams to
transmit a file from one machine to the other. (See the description at the end
of the datagram section of this chapter.)
(More
challenging) Take the
VLookup.java
program and modify it so that when you click on the resulting name it
automatically takes that name and copies it to the clipboard (so you can simply
paste it into your email). You’ll need to look back at the IO stream
chapter to remember how to use the Java 1.1 clipboard.