1

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

4

3 回答 3

1

我不确定你是什么意思。您的意思是,您想从外部站点链接到您的 JSF 应用程序中的页面?

在您的示例中,您可以链接到 /jsf/remind/index.faces (或您将 JSF servlet 映射为的任何扩展名),它应该加载您的页面。

不知道我是否误解了你!

于 2010-01-26T09:34:29.433 回答
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 />一切都可以正常工作。

于 2010-01-26T11:11:35.700 回答
0

init 参数javax.portlet.faces.defaultViewId.[mode]可用于设置每种模式的初始视图。

您可能可以使用FACES_VIEW_ID_PARAMETER创建一个指向不同视图的可收藏 URL ("_jsfBridgeViewId"-假设JSR 329;我没有查看 JSR 301)。

于 2010-01-26T13:56:31.610 回答