在1.2之前,可以向下面一样使用ValueBinding:
ValueBinding vb = facesContext.getApplication().createValueBinding("#{bindings}");
DCBindingContainer dc = (DCBindingContainer) vb.getValue(facesContext);
但是在JSF1.2中,需要这样使用:
/**
* Method for taking a reference to a JSF binding expression and returning
* the matching object (or creating it).
* @param expression EL expression
* @return Managed object
*/
public static Object resolveExpression(String expression) {
FacesContext facesContext = getFacesContext();
Application app = facesContext.getApplication();
ExpressionFactory elFactory = app.getExpressionFactory();
ELContext elContext = facesContext.getELContext();
ValueExpression valueExp =
elFactory.createValueExpression(elContext, expression,
Object.class);
return valueExp.getValue(elContext);
}
/**
* Return the current page's binding container.
* @return the current page's binding container
*/
public static BindingContainer getBindingContainer() {
return (BindingContainer)resolveExpression("#{bindings}");
}
分享到:
相关推荐
为了正确处理这样的表达式,我们可以使用一种叫做“算术表达式解析”的方法。其中,经典的算法有"Shunting-yard算法",由Dijkstra提出,它是一种将中缀表达式(即我们常见的带有括号的表达式形式)转换为后缀表达式...
Spring @Value 属性注入使用方法解析 Spring 框架中,@Value 注解是使用频率非常高的一种注解,它的作用是将配置文件中 key 对应的值赋值给它标注的属性。在日常使用中,我们常用的功能都比较简单,本篇文章系统的...
本篇文章将详细阐述`@Value`注解的使用方法,包括如何注入配置文件中的属性值以及如何利用SpEL(Spring Expression Language)进行动态注入。 ### 配置文件注入 1. **基本使用**:在`application.properties`或...
在设计图表属性时,需要添加category series,一个categoryseries包括series expression、category expression、Value expression、label expression等。其中,Value expression代表数据的值,category expression...
3. **SpEL表达式支持**:`@Value`还支持Spring Expression Language (SpEL)表达式,这使得我们可以进行更复杂的逻辑操作。例如,根据环境变量注入不同的值: ```java @Value("#{systemEnvironment['JAVA_HOME']}...
### JMeter基本使用方法 #### 一、环境搭建与配置 **JMeter**是一款开源的负载测试工具,主要用于测试Web应用。它可以帮助测试者评估应用的性能,包括静态和动态资源,例如静态文件(HTML、图片和CSS文件)、Java...
这可能是由于尝试使用未定义或无效的`ValueExpression`,或者在访问或操作Java对象时出现了问题。 **el-ri.jar** `el-ri.jar` 是EL实现(Reference Implementation)库,它是对`el-api.jar`中定义的接口的具体实现...
JSF会在请求处理阶段调用`UIInput`的`decode`方法,然后在`applyRequestValues`阶段将请求参数绑定到`ValueExpression`。同样以上述的`username`字段为例,我们可以在`submit`方法中使用`FacesContext`来获取: ```...
下面我们将详细探讨`@Value`注解的使用方法和相关知识点。 1. **注解基本用法** `@Value`注解可以直接应用在字段、setter方法、构造函数参数上,其基本格式如下: ```java @Value("${property.name}") private ...
在上面的例子中,我们使用 @RequestMapping 注解将 simplePattern 方法映射到 /departments 地址上。当用户访问 http://localhost/xxxx/departments 时,该方法将被调用。 2. 参数绑定 在 Spring MVC 中,我们可以...
10. **正则表达式**:虽然标签中提到的是“正规表达试”,但可能是指Java中的正则表达式(Regular Expression)。Java 提供了 `java.util.regex` 包来处理正则表达式,可以用来匹配、查找、替换文本。例如,`Pattern...
下面我们将深入探讨`@Value`注解的工作原理、用法以及其在实际开发中的应用。 ### 一、@Value的基本用法 `@Value`注解可以用来注入基本类型的数据,如字符串、整型、浮点型、布尔型等,以及它们的数组。其基本语法...
在Spring容器中,可以使用`#{}`语法来引用Bean及其属性。例如,`#{myBean.myProperty}` 将获取名为`myBean`的Bean的`myProperty`属性值。 **3. 方法调用** SpEL允许直接调用对象的方法,如 `#{myBean.someMethod('...
`@Value`可以用来注入属性值,支持SpEL(Spring Expression Language)表达式,如`${config.property}`,可以从属性源(如properties文件)获取值。 3. **Java配置**:自Spring 3.0起,我们还可以使用Java配置类来...
此方法利用正则表达式(Regular Expression)作为分隔符来分割字符串,并允许设定分割后的数组的最大长度。 #### split() 方法签名 `split()`方法有两个主要重载版本: 1. `public String[] split(String regex)` ...
例如,在配置文件中,我们可以使用SpEL来动态设置Bean的属性值,如`<property name="myProperty" value="#{systemProperties['myPropertyKey']}" />`,这样系统属性的变化就能实时反映到Bean中。 总的来说,Spring ...
- `${expression}` 在Struts2标签中非常常见,如 `<s:property value="${systemSettingModel.settingValue}" />` 用于显示属性值。 ### 综合应用实例 为了更好地理解这些符号的使用场景,我们可以通过几个具体的...
本文将对 Hibernate 中 Criteria 的用法进行总结,涵盖 Criteria 和 DetachedCriteria 的差异、Criterion 和 Projection 的使用方法等。 Hibernate 设计了 CriteriaSpecification 作为 Criteria 的父接口,下面提供...
ASP函数及其用法详解 ASP(Active Server Pages)是一种服务器端脚本环境,用于创建动态网页。在ASP中,函数是一系列预定义的指令集合,用于执行特定任务,如数学运算、日期处理、字符串操作等。本文将详细介绍部分...