Approach 1 isn't really "RMI over HTTP" - it's just an RMI name server running on port 80. The RMI calls are still just RMI calls using JRMP or IIOP - and there are more ports used in RMI than the port that the name server is running on.
Write once, run anywhere, because there's nowhere to hide! - /. A.C.