Я на самом деле это сделал. Вы объявляете свою страницу приветствия как URL, который отображается как сервлет
<welcome-file-list>
<welcome-file>/urlToSomeServlet</welcome-file>
</welcome-file-list>
В этом сервлете вы получите значение userAgent:
String userAgent = request.getHeader("User-Agent");
И затем, в зависимости от этого значения, вы можете либо переслать, либо перенаправить на страницу рабочего стола или на мобильную страницу:
request.getRequestDispatcher("desireedHtmlPage.html").forward(request,response);
или
response.sendRedirect("desireedHtmlPage.html");
Переадресация заставит браузер думать, что он все еще находится на начальном запросе, и будет по-прежнему отображать URL-адрес страницы приветствия, тогда как при перенаправлении фактически сообщается браузеру, что он перенаправлен на другой ресурс, так что URL-адрес ресурса будет отображаться в панели навигации.