JSF外部链接

时间:2010-01-26 09:27:46

标签: java jsf navigation portlet

我想知道是否有可能将外部链接 - 例如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的门户环境中运行

3 个答案:

答案 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。