This actually exposed another more serious problem in my DNS cached applet fix:
6594007: cached applets subject to DNS rebinding
When we write the cache entry to the disk, we do a InetAddress.getByName(hostname) to look up the IP of the codebase host. In the current implementation, if getByName throws UnknownHostException, the write to cache will fail and the applet cannot be loaded.
We should just catch and ignore the exception instead.
This will happen to machines where proxy is needed to access some special hosts. (e.g in our lab machines, you can only access Internet via proxy. So basically now in these lab machines, you cannot load any applets from the internet)
Office machines cannot be used to reproduce this problem, because we now have direct Internet access, and we can access both Intranet and Internet hosts without any proxy.