我想知道是否有可能将外部链接 - 例如domain.tld/jsfview
- 发送到特定的jsf视图/页面。
我不想要我的jsf应用程序的起始页面,它将由
触发 <navigation-rule>
<navigation-case>
<from-outcome>start</from-outcome>
<to-view-id>/jsf/index.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
试过这个配置
<navigation-rule>
<navigation-case>
<from-outcome>reminder</from-outcome>
<to-view-id>/jsf/remind/index.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
但我只是重定向到我的首页。
我忘记了一件重要的事情:JSF应用程序在jboss portlet bridge的门户环境中运行
答案 0 :(得分:1)
我不确定你的意思。您的意思是,您想要从外部站点链接到JSF应用程序中的页面吗?
在您的示例中,您可以链接到/jsf/remind/index.faces(或者您将JSF servlet映射为的任何扩展名),它应该加载您的页面。
不确定我是否误解了你!
答案 1 :(得分:1)
我发现由于我的JSF应用程序的解决方案是在与portlet桥接器一起使用的门户环境中,似乎无法直接链接到JSF页面。
我通过解决方法解决了我的问题 - 确定这可能不适合其他类似的问题:
我正在使用porlet模式直接链接来自外部源的页面。
<init-param>
<name>javax.portlet.faces.defaultViewId.edit</name>
<value>/jsf/remind/index.xhtml</value>
</init-param>
不要误会我的意思:如果我在我的JSF应用程序<h:outputLink />
中,一切都有效。
答案 2 :(得分:0)
init参数javax.portlet.faces.defaultViewId.[mode]
可用于设置每种模式的初始视图。
您可以使用FACES_VIEW_ID_PARAMETER("_jsfBridgeViewId"
- 假设JSR 329创建一个可收藏的不同视图的网址;我没有看过JSR 301。