首页 > 解决方案 > 如何在 EL 中引用 Java 接口常量

问题描述

我需要引用 Java 接口中保存的一些常量(它们是以前的开发人员放在那里的)。但问题当然是您收到错误消息:

javax.el.ELException: The class [com.foo] must be public, non-abstract and not an interface

访问这些常量的最佳方法是什么?我有一个解决方法,我在类文件中实现接口并在我的 jsp 文件中从那里引用常量。但这样做似乎有点迂回。有更好的解决方案吗?

标签: jspel

解决方案


作为一种解决方法,您可以绕过 EL 并改用JSP scriptlet

<%
jspContext.setAttribute("CONSTANT_NAME", InterfaceName.CONSTANT_NAME);
%>

推荐阅读