Mojarra 2.0.3 中复合组件所需属性抛出异常

2023-12-09

我一直在使用 JSF 2.0 复合组件,但我对其中的 require 属性有点困惑composite:attribute标签的意思是做。文档指出,如果页面作者必须提供此属性的值,则必需的属性为 true。

我将其解释为必须为所有具有复合属性的属性提供一个值required=true。我还假设空字符串是有效值。这就是 Mojarra 2.0.2 中的工作方式。

使用这个简单的托管 bean:

@ManagedBean(name = "simpleMB")
@ViewScoped
public class SimpleManagedBean implements Serializable {

   private static final long serialVersionUID = -1;

   private String whatever;

   ... setter and getter
}

以及复合组件:

<composite:interface>
    <composite:attribute name="value" required="true" />
</composite:interface>

<composite:implementation>
    <h:outputText value="Value: '#{cc.attrs.value}'" />    
</composite:implementation>

这些标签在 Mojarra 2.0.2 中有效:

<foo:bar value="" />
<foo:bar value="#{simpleMB.whatever}" />

但是,当我升级到 2.0.3 时,只有第一个标签有效。第二个标签会导致此错误消息:

/requiredAttribute.xhtml @20,42 <foo:bar> The following attribute(s) are 
required, but no values have been supplied for them: value.

当我将 required 设置为 false 时,它​​工作正常。

我是否误解了必需属性的含义?有人可以澄清我应该期待什么行为吗?

Thanks.


我们在 required="true" 与 @ViewScoped bean 的组合中遇到了类似的问题。

在我们的例子中,bean 的行为不再像 @ViewScoped bean(每次都会调用新的构造函数)。

您的问题可能是因为 bean 失去了其作用域,变量再次为空?

无论哪种情况,我能给你的唯一的 awnser 就是不使用 required="true" 或使用 @SessionScoped bean。

(这可能与 Mojarra 无法处理 @ViewScoped beans 中的属性绑定的问题有关)

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

Mojarra 2.0.3 中复合组件所需属性抛出异常 的相关文章

随机推荐

  • 使用生成的主键插入 Derby 表时,Eclipselink JPA 出现错误

    当使用生成的主键持久保存到表中时 EclipseLink 似乎错误地将空主键值传递给 Derby 德比返回错误尝试修改标识列在这种情况下 Derby 需要一条排除 id 值的 SQL 语句 我的问题是如何强制 EclipseLink 发送正
  • JavaScript 中处理大数 (BigNum) 的标准解决方案是什么?

    JavaScript 或浏览器中是否内置了 bignum 另一种方法是加载外部库 例如 但这似乎很慢并且可能会触发安全警告 我考虑过自己的基础http github com silentmatt javascript biginteger
  • 忽略基类 使用 Dokka 查看子类文档中的公共函数

    我使用 Dokka 为 View 子类生成了文档 效果很好 但文档包含基本 View 类的数百个公共函数 有没有办法只记录我的子类公共函数 我尝试将这些选项添加到 Gradle 任务中 但我不认为这就是它的用途 dokkaHtml dokk
  • 使用 EF Core Linq2Sql 进行聚合的聚合

    我有一个带有 EF Core 2 2 Code First DB 的 ASP NET Core 2 2 项目 我有以下实体 建筑物 基本上是一个带有一些其他重要数据的地址 Floor 包含楼层号 一栋建筑物可以有多层 一个楼层必须恰好有一个
  • 如何解释await/async同步上下文切换行为

    关于以下代码的行为 有几件事 但有一件主要的事情 我不明白 有人可以帮忙解释一下吗 它实际上是非常简单的代码 只是一个调用异步方法的常规方法 在异步方法中 我使用 using 块来尝试临时更改 SynchronizationContext
  • 从 JSP 返回 JSONP 而不是 JSON

    I found 这个问题从jsp将响应类型设置为json 但我需要将响应类型设置为jsonp以进行跨域访问 还会是这样吗 response setContentType application javascript 并将来自jsp的响应包装
  • 如何使用 R8 在堆栈跟踪中保留原始行号?

    我正在尝试找出如何使用 R8 保留原始行号 使用当前的AndroidStudio制作应用程序并使用R8对其进行混淆 甚至上传mapping txt将文件上传到 Google Play Console 后 用户的堆栈跟踪在某些情况下是无用的
  • T-SQL 中的编辑距离

    我对 T SQL 计算 Levenshtein 距离的算法感兴趣 我在 TSQL 中实现了标准 Levenshtein 编辑距离函数 并进行了多项优化 与我所知的其他版本相比 速度有所提高 如果两个字符串的开头有共同的字符 共享前缀 结尾有
  • 无法使最大宽度与 Bootstrap 下拉菜单一起使用

    我有一个 Bootstrap 下拉菜单 在某些情况下 菜单项可能非常大 所以我需要设置一个max width 另外 我不希望菜单项被剪切 所以我必须使用white space normal也 问题是我的max width被完全忽略 如果我设
  • File.Copy 与手动 FileStream.Write 复制文件

    我的问题是关于文件复制性能 我们有一个媒体管理系统 需要将文件系统上的大量文件移动到不同位置 包括同一网络上的 Windows 共享 FTP 站点 AmazonS3 等 当我们都在一个 Windows 网络上时 我们可以使用System I
  • Delphi 编译器指令反向求值参数

    这个使用 Math pas 中的 IFThen 函数的 delphi 两行代码给我留下了深刻的印象 但是 它首先评估 DB ReturnFieldI 这很不幸 因为我需要调用 DB first 来获取第一条记录 DB RunQuery se
  • 如何对只读实例属性进行输入验证?

    发布了一个非常相似的问题here 但没有公认的答案 没有代码示例 而且我不太喜欢按照那里提供的唯一一个答案所建议的使用外部库的想法 以下代码允许定义只读实例属性 class Point def init self x y self x x
  • 有充分的理由编写我自己的 daemonize 函数而不是使用 daemon(3) 吗?

    网上有很多守护进程的示例实现 我看到的大多数不使用 daemon 3 函数在后台运行程序 这只是一个品味 无知的问题 还是有充分的理由编写我自己的守护函数 使用 daemon 3 有什么具体的缺点吗 是不是没有安全感 daemon 函数历史
  • 核心数据中的可转换属性无法导出/与 iCloud 同步

    我在用NSPersistentCloudKitContainer 所有数据均在 iCloud 中同步 卸载应用程序后 它会正确同步 但是 需要对敏感数据进行加密 我将密码属性设置为可转换 因此在本地工作得很好 但是当我删除该应用程序时 再次
  • 在 Origin 中将破幂律实现为拟合函数

    再会 我正在尝试使用 origin OriginLab 中的函数生成器来创建一个新函数来适应破碎的幂律 http en wikipedia org wiki Power law Broken power law 所以 我想我已经把实际的功能
  • 从 GUI 类 PyQt4 以外的类更改进度条的值

    我有一个由 Qt 设计器创建的 GUI 类 其中有一个进度条 还有另一个类 其中完成所有数字运算 在此期间我希望进度条定期更新 我认为我会这样做的方式是在其他班级中做类似的事情 gui progressbar setValue some 但
  • 在没有 xts 对象的情况下在 PortfolioAnalytics 中创建有效前沿

    有没有办法在 PortfolioAnalytics 包中创建有效前沿而不指定资产回报的 xts 对象 相反 我想提供预期回报向量和协方差矩阵 有两种方法 首先 您可以提供一个包含矩阵的列表 其结构如下所示 然后调用 Optimize por
  • 在 Mac 应用程序中的保存对话框中包含 iCloud

    我已经实施了iCloud支持我的 Mac 基于文档的应用程序 NSDocument子类可以处理本地存储上打开的保存文件 并且iCloud 但是 我可以将我的文件上传到iCloud只需将其拖动到 打开新文件 面板上即可 当应用程序提示用户保存
  • 如何区分 EOF 字符和实际的文件结尾?

    When reading a file I understand the last character provided is an EOF Now what happens when I have an EOF character in
  • Mojarra 2.0.3 中复合组件所需属性抛出异常

    我一直在使用 JSF 2 0 复合组件 但我对其中的 require 属性有点困惑composite attribute标签的意思是做 文档指出 如果页面作者必须提供此属性的值 则必需的属性为 true 我将其解释为必须为所有具有复合属性的