问题标签 [ognl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5606 浏览

struts2 - 我该如何使用使用 OGNL 访问地图

我正在尝试构建一个时间跟踪页面,在其中显示项目名称、任务和每天计费的小时数。

这是我在 Java 端的对象:

我需要查看这个对象以在屏幕上显示值。这是我在 JSP 页面上的内容:

问题是弄清楚如何显示小时数。上面显示的代码片段不起作用。我可以通过<s:set var="mon" value="%{key+':Mon'}">在我的 td 标签 - hours[#mon] 中使用和引用它来让它工作。

有更好的解决方案吗?

编辑:

谢谢戴夫。你说的对。我正在寻找hours["100_t1:Mon"]

当我在视图层中迭代对象时,需要根据我正在迭代的任务行的键动态插入“100_t1”。'Mon'、'Tue' 可以硬编码。

我将看看我是否可以按照您的建议在视图层之外做得更好。到目前为止,这就是我为我工作的。

最终编辑:

以下语句帮助我避免使用 s:set 标签。我应该包围hours[key + ':Mon']在里面%{}

这也有效

0 投票
1 回答
1614 浏览

struts2 - 使用OGNL在struts2中进行日期比较

在此处输入代码在我的 JSP 中,如果日期字段介于某个范围之间,我会根​​据日期字段显示一个超链接。我正在使用 struts 2 和 ONGL

它失败了,任何人都可以建议我如何做到这一点。

谢谢史密斯。

0 投票
2 回答
1236 浏览

java - 使用 OGNl 表达式进行条件显示

在我的 struts 项目中,我在数组列表中有一组记录,这些记录有它的名称和 categoryid。在第二个数组列表中,我有类别(类别 ID,类别名称)的记录。

现在我想列出第一个带有类别名称的列表作为子标题

我需要将这些显示为

注意:这里我不想显示没有与之关联的记录的类别名称。为此,我在下面编码。

它显示的类别也没有与这些相关的记录。任何人都可以告诉如何控制类别名称的显示。或者有没有其他更好的选择。

0 投票
2 回答
12342 浏览

db2 - MyBatis中如何将方法应用于参数

在阅读了Mapper XMLs之后,我不禁想知道如何将一些常见的转换应用于参数。例如...

在阅读了这个这个之后,我可以做一些观察。

  1. 使用诸如upperorconcat'||'or之类的 SQL 函数'+'进行转换会降低 DB2 的性能
  2. 我总是可以包装映射器或在服务层中公开细节,但这看起来很乱

我想要的是能够做类似的事情......

这样的事情是否可能或第二好的解决方案是什么?

更新:似乎 MyBatis 使用 OGNL 进行一些表达式评估。例如,ifand${}表达式使用 OGNL,但#{}除非有某种方法可以欺骗它,否则它似乎不会。

0 投票
2 回答
2271 浏览

validation - Struts2 OGNL 运行时表达式

我正在验证对象列表。为了向用户显示他们输入的错误内容,我需要在转换错误时重新填充字段。我读到为了重新填充页面上的字段值,我需要执行以下操作:

对于重新填充数组,我必须通过索引引用它们。如此处所述: 更新 struts2 中文本字段中的值列表

我有一个需要验证的用户列表。出于特定原因,我在迭代器上有自己的索引计数器。

我正在为对象用户使用访问者验证器。

正如我所说,出于特定原因,我没有使用迭代器索引计数器。

问题是这value="%{users[#counter].birthdate}"部分不起作用。如果我更改它counter0它会重新填充 users[0].birthdate 的值。似乎它没有在 OGNL 表达式中获得计数器的值。

我试过:

有人可以帮我完成这项工作吗?

更新

最后我应该提到我的特殊情况:

我发现我不需要为字段名称指定值来重新填充值。但由于这条线,我需要使用它:

我需要用大量的英语来解释你们为什么误解了我。我们可以删除这个帖子吗?谢谢

0 投票
2 回答
3200 浏览

struts2 - Struts OGNL if 与动作类变量相关的语句不起作用,

问题是:在我的动作类中,我有一个变量:

动作类转到 reslut.jsp,在 reslut.jsp 中我有:

但它不起作用,有专家可以给我一些建议吗?谢谢。

0 投票
0 回答
5139 浏览

jquery - Struts2:畸形的 OGNL 表达式

在我的 JSP 中,我使用了一个名为TagEdit的插件,它必须有一个带有“name='tag[]'”的输入文本字段,如下所示:

但是当我提交它时,struts2 会抛出这个异常:

struts.xml:

和行动:

哥们我该怎么办?谢谢你们

0 投票
1 回答
1290 浏览

javascript - ognl 到 javascript 数据传输

我正在将包含引号的字符串从 ognl 传输到 javascript,如下所示:

jsonString 有值

引号被替换为&quot;

我该如何防止这种情况?

0 投票
1 回答
486 浏览

java - 如何使用 struts2 OGNL 填充嵌套的通用列表?

我正在尝试从 JSP 页面填充 Action 属性。action 属性属于以下类别:

在操作中,指定了泛型的类型。

我正在尝试将以下内容提交给操作,但records列表最终为空或填充为空值(取决于我尝试填充的记录数)。

我应该使用不同的 OGNL 语法或其他技巧吗?

0 投票
2 回答
1710 浏览

java - Struts2 填充列表

我在 Struts2 中填充用户定义的对象属性列表时遇到问题。

这是我的示例(省略了获取器/设置器):

公共类 Foo { 私有字符串 attr1; 私有字符串 attr2; }

公共类酒吧 { 私人列表 foos; }

公共类 StrutsAction 扩展 ActionSupport { 私人酒吧栏;}

我在 JSP 中有如下代码(摘录):

我需要每个表行在 List 中使用每个属性创建 1 个 foo 项,但是我的代码在传递时为每个属性创建一个新的 foo 对象,我最终得到 4 个 foo 而不是 2 个!

我知道我可以通过将索引硬编码到 html 中来解决问题,如下所示:

我想知道是否可以在不对索引进行硬编码的情况下完成它?