当前位置: 首页 > 知识库问答 >
问题:

JSF太多的commandLinks(h:Form)导致ViewExpiredException

艾阳羽
2023-03-14

我有一个JSF应用程序,它创建和提出了大约50个报告。这些报告被PNGs呈现,在图片下面显示一个表格。

该表使用带有switchtype=“client”的RichFaces4切换面板。togglePanel只是用于折叠和展开表格。

<h:form>
        <rich:togglePanel id="#{param.reportWrapper}_togglePanel"
            stateOrder="opened,closed" activeItem="opened" switchType="client">
            <rich:togglePanelItem name="closed">
                <h:panelGroup>
                    <div class="myclass">
                        <ul class="container-icons">
                            <li>
                                <h:commandLink styleClass="container-max" value="maximieren">
                                        <rich:toggleControl targetPanel="#{param.reportWrapper}_togglePanel" targetItem="@next" />
                                </h:commandLink>
                            </li>
                        </ul>
                        <h3>My Heading</h3>
                    </div>
                </h:panelGroup>
            </rich:togglePanelItem>
            <rich:togglePanelItem name="opened">
                <h:panelGroup>
                    <div class="myclass">
                        <ul class="container-icons">
                            <li>
                                <h:commandLink styleClass="container-min" value="minimieren">
                                        <rich:toggleControl targetPanel="#{param.reportWrapper}_togglePanel" targetItem="@prev" />
                                </h:commandLink>
                            </li>
                        </ul>
                        <h3>Another Heading</h3>
                        <div class="scrolling-table-content">
                            <rich:dataTable>
                                      // ...
                            </rich:dataTable>
                        </div>
                    </div>
                </h:panelGroup>
            </rich:togglePanelItem>
        </rich:togglePanel>
        </h:form>

谢谢你的帮助!

班特斯佩赫特

共有1个答案

淳于健
2023-03-14

如果只需要切换面板,可以使用 ,它允许您限制执行范围(这样它就不会提交整个表单)。或者,您可以完全删除命令组件,只使用TogglePanel的JavaScript API:

<a onclick="#{rich:component('panelId')}.switchToItem(#{rich:component('panelId')}.nextItem())">Next</a>
 类似资料:
  • 我试图测试的速度,反对“手动”乘法,并偶然发现了这个错误: Java 运行时环境检测到致命错误: EXCEPTION_ACCESS_VIOLATION (0xc0000005) 在 pc=0x000000005ac46888, pid=1508, tid=6016 JRE版本:Java(TM)SE运行时环境(8.0_25-b18)(构建1.8.0-25-B16) Java VM:Java热点(TM

  • 我没有使用查看页面,我调用任何片段事务的唯一地方是单击活动布局中导航栏上的按钮。 当我切换到片段太快(像来回),我得到这个例外: java.lang.IllegalStateException:无活动 当我点击切换另一个片段时,第一个片段还没有完全加载完毕。我正在使用碎片活动。 有人能对此发表一些见解吗? 我的代码切换s: 编辑:去掉过渡解决了问题,但我想知道是否有一种方法可以在适当的位置完成过渡

  • 问题内容: 如果我的应用程序具有太多的静态变量或方法,则按照定义,它们将存储在堆中。如果我错了请指正我 1)这些变量会在应用程序关闭之前一直在堆上吗? 2)他们随时可以用于GC吗?如果不能,那是内存泄漏吗? 问题答案: 静态方法只是方法,它们不存储在堆中,只是不使用“ this”参数。 静态变量充当GC的“根”。结果,除非您将它们显式设置为null,否则它们将一直存在,只要程序处于活动状态,那么它

  • 我有一个独立的库(jar文件),它被添加到应用程序服务器类路径中,以监控JVM中所有正在运行的应用程序,并在出现问题时发送电子邮件。 jar文件将所有依赖项捆绑在jar中(使用maven shade插件),包括javamail jar文件。 当appserver中的其他Web应用程序之一具有javamail作为依赖项时,我的jar文件中的javamail会发生一些依赖冲突,我得到一个异常 我无法修

  • 问题内容: 在for循环中使用split会导致上述异常。但是,当从for循环中获取独立元素时,它可以工作: 一个解释将不胜感激-并且自然也为for循环版本的正确语法。 问题答案: 该环路期望的是,在迭代每个项目可以解压到两个变量。因此,在您的情况下,看起来像其中之一: 这些可迭代项中的每个项都可以分为和组件。在您的情况下,它们不能,因为的输出是具有两个以上字符的字符串列表: