【问题标题】:Constant resolution inside EL variableEL 变量内的恒定分辨率
【发布时间】:2014-07-28 06:34:23
【问题描述】:

不知道有没有办法解决这个问题:

  • 我正在使用 Spring MVC
  • 我有属性值,我存储一些保存为常量的对象
  • 我想通过 JSP 中的那个常量来访问模型,所以是这样的:

${ <%= ATTR_ALL_TEMPLATES %> }

别担心,我不想使用小脚本,只是为了澄清。我怎样才能做到这一点?

编辑:

我想只通过常量在 Portlet/Servlet 和 JSP 之间进行通信,而不需要知道它们有什么价值。因此,我想使用上述内容,而不是 ${ allMyTemplates }

【问题讨论】:

  • 你检查过SpEL Read here
  • 你想在 JSP 页面中使用 EL 常量?
  • @sankrish 它是否包含一些这样做的方法?
  • @Yagnesh 我想通过常量在 Portlet/Servlet 和 JSP jsut 之间进行通信,而无需知道它们有什么价值。所以我想使用${ <%= ATTR_ALL_TEMPLATES %> }之类的东西而不是${ allMyTemplates }
  • ATTR_ALL_TEMPLATES 在 servlet 中是否存在?或任何其他文件?

标签: java jsp spring-mvc el


【解决方案1】:

据我了解,您需要使用 EL 从 jsp 中的 java 常量文件中读取 Constant
有一个Jakarta : Unstandard Tag library 用于从java 文件中读取常量。(Maven Repo.)
使用 从 java 文件中读取常量。

您需要为此添加 jar 文件并在您的 JSP 文件中包含标签库声明,如下所示:

<%@taglib uri="http://jakarta.apache.org/taglibs/unstandard-1.0" prefix="un"%>  

要读取任何常量,您首先需要为特定的 java 常量文件包括以下行,例如:

<un:useConstants var="regStatus"com.example.YourConstantsClass"/>  

通过下面的行读取常量:

<p>${Constants.MY_CONSTANT_1}</p>  

another tag library 提供相同的功能。

希望这会对你有所帮助。

【讨论】:

    猜你喜欢
    • 2020-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    • 2021-06-27
    • 2013-10-19
    相关资源
    最近更新 更多