【发布时间】:2015-08-12 01:48:11
【问题描述】:
我花了一天时间寻找正确的解决方案,但没有运气! 问题是如何使用 el ${bean.objectName} 从 jsp 调用 java 常量变量。最佳做法是什么?
我想知道这是否可行,我对 Spring 和 jsp 很陌生。
常量类:
public class RNConstant {
public static final String HELLO_WORLD = "Hello World again!";
public static final String DEFAULT_LOCALE = "id_ID";
public static final String CONTEXT_PATH_SOAP_SR = "soap.sr";
}
jsp 中期望用 EL 调用
<p>${RNConstant.HELLO_WORLD}</p>
我可以使用下面的 scriptlet 来执行此操作,但如果它在 weblogic 中运行,我无法使其工作。这适用于 apache tomcat v7 或 v8
<%@ page import="static id.co.telkom.common.RNConstant.*" %>
...
...
<%= HELLO_WORLD %>
weblogic 中的错误
home.jsp:2:18: Syntax error on token "static", Identifier expected after this token
<%@ page import="static id.co.telkom.common.RNConstant.*" %>
^-------------------------------------^
home.jsp:11:19: HELLO_WORLD cannot be resolved
Hello world! <%=HELLO_WORLD%>
^--------^
java 版本:1.6
pom.xml
spring
<version>1.0.0-BUILD-SNAPSHOT</version>
<properties>
<java-version>1.6</java-version>
<org.springframework-version>3.2.8.RELEASE</org.springframework-version>
<org.springjs-version>2.0.5.RELEASE</org.springjs-version>
<org.springws-version>2.2.1.RELEASE</org.springws-version>
<org.springsecurity-version>3.2.3.RELEASE</org.springsecurity-version>
<jackson-version>1.9.10</jackson-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>
以下代码解决了Scriplet问题,RNConstant的内容还是一样的。
<%@ page import="id.co.telkom.common.RNConstant" %>
...
...
<%= RNConstant.HELLO_WORLD %>
干杯,
亨德利
【问题讨论】:
-
我很困惑,你不能使用 model.addAttribute("nameuwishinjsp",nameofvariableinjava); .我错了吗?
-
@WeareBorg 是的,我们可以这样做,但是,我试图实现的是创建一个可以从 .jsp 文件直接全局调用的常量类
标签: java jsp spring-mvc weblogic scriptlet