【问题标题】:display:table using Struts action resultsdisplay:table 使用 Struts 动作结果
【发布时间】:2018-05-13 07:14:58
【问题描述】:

我有一个 display:table 标记,它使用了一个始终显示“没有要显示的记录”的 struts 操作的结果。操作方法中的记录代码显示操作结果中有 30 项。

希望有人能指出我的错误:

JSP 是:

<s:action var="passageAction" name="list" namespace="/secure/assessment/passage">
    <s:param name="itemBankID">${param.itemBankID}</s:param>
    <s:param name="standardGuid">${param.standardGuid}</s:param>
</s:action>

<display:table id="passage" name="#passageAction.availableItems">

Struts 动作定义:

<action name="list" class="com.ia.controller.assessment.PassageAction" method="listPassages">
  <result name="success"/>
  <result name="error"/>
</action>

listPassages 方法的最后一部分记录了 30 个项目:

       this.availableItems =
                this.passageDAO.list(
                    criteria,
                    pagination,
                    showRetired,
                    excludePrompt,
                    null);
       LOGGER.info("count of items " + this.availableItems.size());
       return SUCCESS;

【问题讨论】:

  • AFAIK 显示标签库对 OGNL 一无所知(现在可能,我已经有 5 年多的时间没有考虑过了)并且您正在尝试使用 OGNL 来引用这些项目。我要尝试的第一件事是对显示标签的name 属性使用标准JSP EL 表示法,但我的猜测是这还不够。也就是说,我很困惑为什么你会这样做,即通过&lt;s:action /&gt; 标签。在您实际使用的操作中进行调用,而不是在单独的操作中调用 - 视图层不是聚合所需信息的好地方。
  • 我正在将此页面的结果加载到一个 div 标签中,因此它显示为一个弹出模式窗口。这就是为什么单独使用 s:action 标签
  • 我看不出它在弹出窗口中有什么关系。

标签: struts2 displaytag


【解决方案1】:

通过在 div 标签上使用 jquery 加载动作解决...正如 Dave 所说,碎片太多​​ –

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-04
    • 2011-05-09
    • 2014-08-23
    • 2013-09-16
    • 2015-08-21
    • 1970-01-01
    • 2014-12-09
    • 1970-01-01
    相关资源
    最近更新 更多