【问题标题】:h:outputLink navigation sometimes does not workh:outputLink 导航有时不起作用
【发布时间】:2012-06-09 07:16:24
【问题描述】:

我有一个像这样从一个页面到另一个页面的导航定义。

<h:outputLink id="idLink"  value="Page1.seam" >
    <f:param name="m" value="n103" />
    <f:param name="mss" value="110" />
<h:outputText value="Return to Page 1" />
<a4j:support event="onclick" action="#{beanName.action}" limitToList="true" ignoreDupResponses="true" eventsQueue="que" ajaxSingle="true" immediate="true">
</a4j:support>
</h:outputLink>

问题是有时视图不会更改为 Page1.seam 并保留在 Page2.seam 中。 有谁知道的更好吗? 帮助将不胜感激。 谢谢。

【问题讨论】:

  • 你在 beanName.action 中做了什么?贴一些代码。失败时是否收到任何错误或日志?检查浏览器中的操作。他是在发帖吗。您可以检查 firebug net 部分,查看失败时是否执行了哪些帖子
  • 你可以试试用&lt;h:commandLink&gt;代替&lt;h:outputLink&gt;
  • @roel - 我会寻找错误,但这种情况发生的可能性很小,所以我会进一步调查。
  • @Mango - 不, 不起作用。它会生成一个帖子。 :))

标签: jsf jsf-2 richfaces seam2


【解决方案1】:

这个结构没有意义。使其成为普通链接

<h:outputLink value="Page1.seam">
    <f:param name="m" value="n103" />
    <f:param name="mss" value="110" />
    <h:outputText value="Return to Page 1" />
</h:outputLink>

要在打开页面时调用操作,请在目标视图中使用&lt;f:event type="preRenderView"&gt;

<f:event type="preRenderView" listener="#{beanName.action}" />

另见:

【讨论】:

  • 顺便说一句,我仍在使用 JSF 1.2,所以没有 f:event,你认为什么是更好的选择。谢谢:)
  • 啊,因此您也没有&lt;f:viewParam&gt; 来设置参数。改用 bean 的构造函数或@PostConstruct
  • 我会改用@PostConstruct。非常感谢。 :)
  • @BalusC 你说This construct makes no sense. Make it a normal link时能否详细说明原因。为什么这么说?
  • @Vikas:OP 尝试使用 ajax 发送幂等请求。这没有任何意义。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-22
  • 2019-01-15
  • 2018-04-01
  • 2013-07-12
  • 1970-01-01
相关资源
最近更新 更多