As far as I know, there are no JSF components that do this with a single tag or something else. The simplest thing you can do is simply display the original HTTP header User-Agent.
<h:outputText value="#{header['user-agent']}" />
This is just a large and ugly line that does not always decrypt for everyone.
API-, HTTP User-Agent , ββ / / , useragentstring.com.
User-Agent API JSF bean .