Вы можете получить имя сервера через localhost следующим образом:
String hostname = InetAddress.getLocalHost().getHostName();
Обновление
Вышеприведенное возвращает имя сервера, на котором он работает, поэтому будет указано имя хоста веб-службы.
Если вам нужно имя сервера перед веб-сервисом, вы можете получить его из запроса:
String hostname = request.getRemoteHost();
должен сделать трюк. Помните, что имя удаленного хоста используется клиентом сокета для настройки соединения, это не обязательно должно быть имя DNS. Если вам нужно DNS-имя, вы можете использовать:
String hostname = InetAddress.getByName(request.getRemoteAddr()).getHostName();
Обновление 2
Если вы имеете в виду не то, что относится к серверу (решение 1) или перенаправляющему прокси (решение 2), а к какому-то логическому имени кластера, вы можете определить это в своем файле web.xml как параметр контекста:
<context-param>
<param-name>clustername</param-name>
<param-value>OurPrettyCluster</param-value>
</context-param>
и прочитайте это в своем сервлете:
ServletContext context = getServletContext();
String clustername = context.getInitParameter("clustername");
Если это также не помогает, вам нужно обновить свой вопрос и описать конфигурацию своего кластера, потому что с предоставленной информацией сделать не намного больше.