使用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>