如何在 EL JSF 中使用方括号

2024-02-27

我见过有人在 JSF 中使用方括号,我不确定我是否正确理解它的用法。所以也许 JSF 大师可以帮助我理解它

1.假设我有这个

#{bean.x}

x是一个二维数组(x[][]),如何显示x[0]使用EL?我想在这种情况下我需要使用方括号。我想我用#{bean.x[0]},但我有例外。

2.第二种情况来自BalusC代码将参数传递给复合组件操作属性 https://stackoverflow.com/questions/6355543/pass-argument-to-a-composite-component-action-attribute

<composite:interface>
   <composite:attribute name="bean" type="java.lang.Object" />
   <composite:attribute name="action" type="java.lang.String" />
   <composite:attribute name="property" type="java.lang.String" />
</composite:interface>
<composite:implementation>
   <h:commandButton value="Remove" action="#{cc.attrs.bean[cc.attrs.action]}">
      <f:setPropertyActionListener target="#{cc.attrs.bean[cc.attrs.property]}" value="Somestring" />
   </h:commandButton>
</composite:implementation>

我理解代码在做什么并且它工作得很好,但是如果有人可以解释在这种情况下方括号的用途,我将不胜感激。非常感谢


我想我用#{bean.x[0]},但我有例外。

不幸的是,您没有分享异常详细信息。但这应该可行,前提是有一个getX()方法返回一个非null给定索引确实存在的数组。


第二种情况是从 BalusC 代码将参数传递到复合组件操作属性

在这种特殊情况下,大括号表示法[]使您能够使用动态属性名称或操作方法名称。以下当然不行

#{cc.attrs.bean.cc.attrs.action}

它只会尝试调用bean.getCc().getAttrs().action().

大括号表示法也用于Map<K, V>。它允许您指定包含点的键(反过来不应将其作为属性进行 EL 求值)

#{bean.map['key.with.dots']}

当然,它还允许您指定动态映射键:

#{bean.map[otherBean.mapKey]}

也可以看看:

  • 我们的 EL 维基页面 https://stackoverflow.com/tags/el/info
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 EL JSF 中使用方括号 的相关文章

随机推荐

  • 如何在文本视图的左上角设置可绘制对象?

  • 对数据表中的筛选列求和

    我正在尝试对数据表中过滤列的结果求和 我查看了他们网站上提出的问题 人们已经成功使用这个方法 http datatables net forums discussion 2053 fnfootercallback sum column af
  • 如何比较 string.characterAtIndex 和字母?

    我使用 swift 我想做的是检查这一点 if string characterAtIndex i a 但我收到错误 如何转换这个 a 以便它可以与我循环的字符类型相同 Thanks 你需要转变你UniChar characterAtInd
  • PhoneGap/Cordova 以及最新版本的 Google Chrome 中没有“Access-Control-Allow-Origin”

    我工作于Sencha Touch Framework跨移动平台 我正在运行我的项目mac os x localhost 我试图通过请求获取服务器的响应Ext Ajax request 我收到一个典型错误CORS XMLHttpRequest
  • 在 C/C++ 中初始化大小未知的数组 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在 C 中初始化数组 例如 void initArr int size C语言没有提供初始化数组的选项 如果他的大小不是一个常量值 并
  • 如何判断CSS是否已经加载?

    我如何断言页面的 CSS 已在 Watin 2 1 中成功加载并应用其样式 在做了一些研究并写下我的答案之后 我偶然发现这个链接 http www phpied com when is a stylesheet really loaded
  • iOS 5 中的离屏 UITextView 不可见/清晰文本

    我有一个从笔尖加载的离屏 UITextView 实例 当用户点击 评论 按钮时 该实例会移动到屏幕框架中 输入使用的任何文本都是不可见的 如果用户旋转设备 则会显示文本 我尝试过抛出 setNeedsDisplay 和 setNeedsLa
  • ffmpeg的UDP协议是什么?

    ffmpeg的UDP协议是什么 这是另一个例子question https stackoverflow com questions 12003014 pipe udp input to ffmpeg ffmpeg i udp localho
  • 我们可以检查一个指针以确保它是一个有效的地址吗?

    我的想法是打印它指向的对象 我认为一个有效的指针应该有一个有效的对象 如果我们尝试打印出对象 我们会验证指针是否有效 我对吗 我认为一个有效的指针应该有一个有效的对象 是的 这就是有效指针的定义 如果我们尝试打印出对象 我们会验证指针是否有
  • setInterval 不适用于 ajax 调用

    我对网络服务进行了 getJson 调用并且工作正常 现在我尝试每 10 秒发出一次请求 使用带有回调函数的 setInterval 来触发弹出警报 我无法让它发挥作用 这是代码 function ajxCall getJSON http
  • 如何停止和播放jquery脚本

    我在用着slidesjs http www slidesjs com 在单页网站上创建 5 个不同的幻灯片 画廊 它们都有 slides 类并有自己的 ID 在调用播放函数之前 我不希望播放任何幻灯片 我已经能够使用以下方法成功阻止每个幻灯
  • 何时方便使用 Executors.newSingleThreadExecutor() 的示例

    请有人告诉我一个现实生活中的例子 在哪里使用这个工厂方法比其他方法更方便 新的单线程执行器 公共静态 ExecutorService newSingleThreadExecutor 创建一个执行器 它使用单个工作线程来操作 无界队列 但请注
  • Json.net 上的反序列化更改属性类型和名称

    使用 json net 当我反序列化 json 字符串时 我需要将 json 列表映射到另一个字段并转换类型 为了清楚起见 我有这个类 它是生成的代码 我无法更改它 Serializable public partial class Nbg
  • 无法解析:com.google.firebase:firebase-bom:31.0.0

    我正在使用 Android Studio Dolphin 2021 3 1 Patch 2 Gradle 7 5 1 Android Gradle 插件版本 7 3 1 Build Tools 33 0 0 SDK 32 当前稳定的 Gra
  • 如何在Django中获取所有GET请求值?

    如何在 Django 中获取所有这些 url 参数 1 12 18 5 生日快乐 https domain method 1 12 18 5 Happy birthday 我努力了 parameter request GET get 1 但
  • 当用户单击按钮时如何打开新窗口?

    当用户单击按钮 仍需要创建 时 我将如何创建一个新窗口 我删除了一些代码以使其更短 我需要创建一个按钮 当他们点击该按钮时 会打开一个新窗口 我尚未创建该按钮 因为该按钮必须链接到新窗口 请帮忙 My imports class App d
  • JavaScript 中检查变量是数字还是字符串

    有谁知道如何在 JavaScript 中检查变量是数字还是字符串 如果您正在处理文字符号 而不是构造函数 则可以使用typeof https developer mozilla org en Core JavaScript 1 5 Refe
  • 创建与 azure 资源管理器的服务连接时出错:azure pipelines

    使用托管标识的 Azure 资源管理器 当尝试添加服务连接时 因此我可以使用另一个 azure 云应用程序服务通过管道进行部署 我在尝试时收到此错误 Service connection field creationMode is not
  • 函数返回类型的类型限定符

    给出以下 C 源代码 const int foo void return 42 gcc编译没有错误 但有 Wextra or Wignored qualifiers 出现以下警告 warning type qualifiers ignore
  • 如何在 EL JSF 中使用方括号

    我见过有人在 JSF 中使用方括号 我不确定我是否正确理解它的用法 所以也许 JSF 大师可以帮助我理解它 1 假设我有这个 bean x x是一个二维数组 x 如何显示x 0 使用EL 我想在这种情况下我需要使用方括号 我想我用 bean