使用jsf检查用户代理

使用jsf检查用户代理,jsf,user-agent,Jsf,User Agent,我想检查我客户的用户代理。(如果可能,请选择浏览器类型/版本) 但我不知道该怎么做 谢谢您的帮助。它在用户代理http头中发送 HttpServletRequest request = (HttpServletRequest)context.getExternalContext().getRequest(); String userAgent = request.getHeader("user-agent"); 没关系,我已经找到了。 我使用: 感谢您的帮助。在JSF2页面中,您可以通过请求对

我想检查我客户的用户代理。(如果可能,请选择浏览器类型/版本)

但我不知道该怎么做


谢谢您的帮助。

它在
用户代理
http头中发送

HttpServletRequest request = (HttpServletRequest)context.getExternalContext().getRequest();
String userAgent = request.getHeader("user-agent");
没关系,我已经找到了。 我使用:


感谢您的帮助。

在JSF2页面中,您可以通过请求对象直接打印用户代理:

<h:outputText value="#{request.getHeader('user-agent')}" />

但别忘了使用h名称空间;-)


然后,您可以通过函数响应不同的浏览器

示例:

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:fn="http://java.sun.com/jsp/jstl/functions">
    <h:head>
        <title>Facelet Title</title>
    </h:head>
    <h:body>
        <p>
            User-Agent: <h:outputText value="#{request.getHeader('user-agent')}" />
        </p>       
        <h:panelGroup rendered="#{fn:containsIgnoreCase(request.getHeader('User-Agent'), 'Firefox')}">
            <p>
                Hello Firefox!
            </p>
        </h:panelGroup>
    </h:body>
</html>

Facelet标题

用户代理:

你好,Firefox!


好的,谢谢,但是什么是
上下文
?如何初始化它?
#{header['user-agent']}
更简单。不过,如果你接受了ThiefMaster的答案,对他来说会更好。:)
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html">
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:fn="http://java.sun.com/jsp/jstl/functions">
    <h:head>
        <title>Facelet Title</title>
    </h:head>
    <h:body>
        <p>
            User-Agent: <h:outputText value="#{request.getHeader('user-agent')}" />
        </p>       
        <h:panelGroup rendered="#{fn:containsIgnoreCase(request.getHeader('User-Agent'), 'Firefox')}">
            <p>
                Hello Firefox!
            </p>
        </h:panelGroup>
    </h:body>
</html>