我在 web.xml 中添加了一个 primefaces 主题...
<context-param>
<param-name>primefaces.THEME</param-name>
<param-value>le-frog</param-value>
</context-param>
...并在头部获取样式表的链接...
<link type="text/css" rel="stylesheet" href="/pos2hue/javax.faces.resource/theme.css.jsf?ln=primefaces-le-frog" />
...这是正确的,如果我们不使用单点登录,它将所有没有 sessionid 的 URL 重定向到登录屏幕。所以样式表解析为:
<HTML><HEAD><TITLE>HTTP Post Binding (Request)</TITLE></HEAD><BODY Onload="document.forms[0].submit()"><FORM METHOD="POST" ACTION="https://configured.identity.url"><INPUT TYPE="HIDDEN" NAME="SAMLRequest" VALUE="..."/></FORM></BODY></HTML>
来自 primefaces 的其他链接都可以,例如:
<script type="text/javascript" src="/contextroot/javax.faces.resource/jsf.js.jsf;jsessionid=eo0Oo0oK37AUm7bNOaFqdrB-?ln=javax.faces"></script>
作为附加信息,我必须添加:
- web.xml 中的会话模式设置为“URL”(我不想更改)
<session-config>
<tracking-mode>URL</tracking-mode>
</session-config>
- 对于单点登录,我们使用 picketlink(我在 WEB-INF 文件夹中有一个 picketlink.xml)
- 网络服务器是 JBoss EAP 6.1
任何想法,我怎么能
- 让primefaces将sessionid添加到样式表href?
- 排除单点登录机制?
- 或者让它以其他方式工作?
直接添加样式表是可能的,但不需要,因为我们为所有应用程序使用 JSF2 模板,但我只想为一个应用程序配置它。先感谢您!