java - JSP 表达式语言中不明确( boolean/整数)访问器的优先级是什么?

标签 java jsp el

<分区>

我正在处理一个遗留系统,它有一个带有这个(修剪/屏蔽)片段的 Java bean:

public class AmbiguousJspElBean {
    private int ambiguous;

    public int getAmbiguous() {
        return ambiguous;
    }

    public void setAmbiguous(int ambiguous) {
        this.ambiguous = ambiguous;
    }

    public boolean isAmbiguous() {
        return ambiguous == 1;
    }
}

我的问题是:

  1. 如果我尝试通过 ${bean.ambiguous} 在 JSP 表达式语言中引用 ambiguous,解释器使用什么优先级来查找匹配的访问器?

    一个。我已经对其进行了测试,在实践中,它似乎更倾向于 isAmbiguous() 方法,但是总是是这样吗/它是否取决于我的解释器在用吗?

  2. 我是否应该调用 ${bean.isAmbiguous()} 来(可能)减轻 future 旁观者的歧义?

正如我所说,它是一个遗留系统,因此修改原始类以将 ambiguous 变成 boolean 而不是 int不是一个选择。

最佳答案

看起来这是 asked and answered已经,默认为 boolean 值 public boolean is<PropertyName>()访问器(accessor)。

关于java - JSP 表达式语言中不明确( boolean/整数)访问器的优先级是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43234273/

相关文章:

jsf - 使用 id ="#{...}"导致 java.lang.IllegalArgumentException : Empty id attribute is not allowed

java - JFrame 中没有显示任何内容

java - Java IO 是否有最大文件名长度限制?

java - C3P0 托管连接池无法从其主要资源或工厂资源中获取资源

java - Websphere 7 和 JSTL : Cannot get value from arrays -> Missing Resource in EL implementation: ? ??propertyNotReadable?

java - NPE Con​​figureListener Tomcat 8 + JSF 2.3

java - 即使使用 SByte 数组也是 "Converting Byte array is obsolete, use SByte array instead"

java - Servlet getServletContext().getRequestDispatcher 显示 url 行中的属性

java - 从 servlet 连接到数据库

JSP动态下拉列表