Java FacesServlet应用程序URL JSF/Glassfish

Java FacesServlet应用程序URL JSF/Glassfish,java,jsf,glassfish-4,Java,Jsf,Glassfish 4,我有一个名为MyApplication的应用程序。我在glassfish上部署了一个虚拟服务器,自从我设置了默认的欢迎页面以来,一切都很好。假设虚拟服务器在mydomain.com上侦听 我转到mydomain.com,看到了我的应用程序的索引文件。然后我去做一个j_安全检查登录 然后我被重定向到: 我怎样才能把这个送到wehre呢 现在,如果我将我的应用程序从URL中取出,并尝试手动转到该页面,它将是空白的,因为我相信JSF不会处理它 我已经试过了。 *将默认glassfish应用程序设置为我

我有一个名为MyApplication的应用程序。我在glassfish上部署了一个虚拟服务器,自从我设置了默认的欢迎页面以来,一切都很好。假设虚拟服务器在mydomain.com上侦听

我转到mydomain.com,看到了我的应用程序的索引文件。然后我去做一个j_安全检查登录

然后我被重定向到:

我怎样才能把这个送到wehre呢

现在,如果我将我的应用程序从URL中取出,并尝试手动转到该页面,它将是空白的,因为我相信JSF不会处理它

我已经试过了。 *将默认glassfish应用程序设置为我的应用程序,并将我的应用程序的上下文路径设置为/(glassfish抱怨,我无法部署我的应用程序) *执行与上面相同的操作,而不将我的上下文路径设置为/并保持原样。 将部署,但问题相同

我想要这样做的主要原因是,如果有人被重定向到没有应用程序名称的路径,会话状态似乎会有所不同。并导致会话冲突和值传递不正确等零星问题。因此,我要么强制URL始终使用ApplicationName,要么为了一致性而强制他们不使用它

应该有办法做到这一点,因为我认为我们不应该总是在URL中包含应用程序名

如果可以,请提供帮助,我通过搜索找到的内容似乎可以满足初始请求的要求,但在使用FacesContext extenralContext重定向进行重定向时却不能

除非我没有正确重定向。我在这里不知所措


谢谢你的帮助
应用程序URL将始终优雅地显示给用户。

Prettyfaces重写请求路径,而不是上下文根目录。这就是他想要的。。。使请求不同于上下文根。使用prettyfaces,用户可以完全隐藏上下文。不是100%我想去掉上下文根,而不是简单地重写它。我能否使用prettypfaces将domain.com/MyApplication/members/test.xhtml更改为domain.com/members/test.xhtml?