java - 在 tomcat + jsf 中的 https 之后重定向到 http

标签 java tomcat jsf

我有一个登录页面,我想在 https 中显示。验证用户后,我想把他转回http。

所以我在web.xml中声明

<security-constraint>
  <web-resource-collection>
   <web-resource-name>Login and Restricted Space URLs</web-resource-name>
   <url-pattern>/general/enter.jsf</url-pattern>
  </web-resource-collection>  
  <user-data-constraint>
   <transport-guarantee>CONFIDENTIAL</transport-guarantee>
  </user-data-constraint>
 </security-constraint>

 <security-constraint>
  <web-resource-collection>
   <web-resource-name>Rest of the Application</web-resource-name>
   <url-pattern>/general/home.jsf</url-pattern>
     </web-resource-collection>
  <user-data-constraint>
   <transport-guarantee>NONE</transport-guarantee>
  </user-data-constraint>
 </security-constraint>

我看到登录页面是 https。

但在我的行动中:

public String doLogin() throws Exception {
  ...
  User user = service.getUserByNameAndCompany(name, company);
  ......
                return "/general/home.jsf";
 }

bean 将用户重定向到

https ://mycomputer:8443/MYProject/general/home.jsf

我希望它回来

http: //mycomputer:8080/MYProject/general/home.jsf

我该怎么做?

最佳答案

JSF 导航会将您重定向到同一应用程序中的页面(这意味着您只能在 https://mycomputer:8080/MYProject 内导航)。

你可以做的是导航到像 /general/redirect.jsf 这样的页面,然后从那里使用标题或 javascript 重定向到你想要的 url。

关于java - 在 tomcat + jsf 中的 https 之后重定向到 http,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3157412/

相关文章:

java - 与 Java Web 应用程序相关的初学者查询

java - Eclipse 可以建议构造函数来实现类型吗?

java - 从 war 中加载图像

java - Tomcat - 如何使用 PersistentManager + FileStore 将 session 立即保存到磁盘

javascript - *在* ajax更新后执行Javascript

java - 方法标题: error ']' expected (Java)中的数组

tomcat - 部署到外部 Tomcat 容器时的 Spring Boot Actuator 端口

java - 端口号在 URL 中消失

ajax - 取消 JSF ajax 调用

jsf - Primefaces 选项卡中的页面重定向问题?