[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| Re: [el-dev] Jakarta Expression Language 5.0 Release Details | 
Here is my attempt at filling this in. The content has largely been 
lifted from the changes section of the specification.
Mark
On 10/05/2022 14:41, Andrew Pielage wrote:
> Jakarta Expression Language 5.0
While this is a major release due to the removal of a long deprecated 
method, the focus of the release has been on clarifying areas of the 
specification where ambiguity had been identified and on making a number 
of small enhancements to increase the usability of the API.
This release also laid the groundwork for the removal of the dependency 
on the java.desktop module which is planned for the next release.
> <Please describe the high-level changes made to Jakarta Expression
> Language 5.0.  The intent is for the first two sections to be an
> executive summary in the range of 300 to 800 characters.  Links can
> accompany the executive summary, but cannot substitute for an executive
> summary.>
>
> New features, enhancements or additions**
The BeanELResolver has been updated to consider default method 
implementations when looking for property getters, property setters and 
methods.
Support has been added for coercing a LambdaExpression instance to a 
functional interface method invocation.
Support has been added for coercing arrays.
The MethodReference class has been added to provide access to details of 
the method to which a MethodExpression resolves, including any 
annotations present on the method.
Generics are now used throughout the API.
The expected behaviour when matching expressions to methods based on 
parameter types has been clarified.
The EL specification now explicitly states that specifications that 
depend on the EL specification may define further packages, in 
additional to java.lang.*, that are imported by default into the EL 
environment.
> Removals, deprecations or backwards incompatible changes**
The deprecated, mis-spelt method MethodExpression.isParmetersProvided() 
has been removed.
The ELResolver method getFeatureDescriptors() has been deprecated with 
removal planed for EL 6.0. This is to remove the dependency on the 
java.desktop module from the EL API.
A default implementation that returns null has been added to the 
ELResolver method getFeatureDescriptors() since it has been deprecated 
so that custom ELResolver implementations do not need to implement the 
method.
Explicitly document that ELResolver.getType() must return null if either 
the ELResolver or the resolved property is read-only. This changes the 
documented behaviour of the StaticFieldELResolver.
> Minimum Java Version**
Java 11