Trail: Deployment
Lesson: Applets
Section: Practical Considerations When Writing Applets
Working with a Server-Side Application
Working with a Server-Side Application
Applets, like other Java programs, can use the API defined in the java.net package to communicate across the network. The only difference is that, for security reasons, the only host an applet can communicate with is the host it was delivered from.


Note:  Depending on the networking environment an applet is loaded into, and depending on the browser that runs the applet, an applet might not be able to communicate with its originating host. For example, browsers running on hosts inside firewalls often cannot get much information about the world outside the firewall. As a result, some browsers might not allow applet communication to hosts outside the firewall.

It's easy to find out which host an applet came from. Just use the Applet getCodeBase method and the java.net.URL getHost method, like this:

String host = getCodeBase().getHost();

Once you have the right host name, you can use all the networking code that is documented in the Custom Networking trail.


Note:  Not all browsers support all networking code flawlessly. For example, one widely used browser compatible with Java technology doesn't support posting to a URL.

A Simple Network Client Applet

Here's an example of implementing an applet that's a network client.

Using a Server to Work Around Security Restrictions

Here's an example of implementing a server to get around applet security restrictions.
Previous page: Threads in Applets: Examples
Next page: A Simple Network Client Applet