In Java fai cosi':
String host = InetAddress.getLocalHost().getHostAddress();
oppure cosi':
String host = InetAddress.getLocalHost().getHostName();
Sotto windows funziona bene, purtroppo sotto linux getLocalHost() tende sempre a restituire l'interfaccia di loopback, in quel caso devi controllare tutte le interfacce di rete, recuperarne gli indirizzi ed escludere, appunto, quello di loopback.
In jsp non saprei.