'Expression language 3.0 with Weblogic 12.2.1.4.0 not working

Dears,

I am using expression language in my JSP to access Enum values, example:

<c:choose>
<c:when test="${request.status eq RequestStatusEnum.PENDING}">
<p class="status_smaller status_request status_in_progress"><fmt:message key="application.status.pending"/></p>
</c:when>
.....

where RequestStatusEnum is a simple Enum:

public enum RequestStatusEnum {
PENDING,
APPROVED,
REJECTED
}

The code above is working fine on tomcat 9.0, however when deploying on Weblogic 12.2.1.4.0, the expression RequestStatusEnum.PENDING is not getting evaluated, When replacing the expression by a scriptlet <%=RequestStatusEnum.PENDING %> it works but I want to keep using expression language.

Java version used: 1.8.0_311

According to Oracle, weblogic 12.2.1.4.0 is compliant with EL 3.0 specification.

Do you have any explanation please or any idea on how to investigate it further?

Regards



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source