如何使用c:设置赋值变量

时间:2012-04-09 16:43:46

标签: spring java-ee-6

在我的.jsp文件中,我有以下代码。如何将environment变量与字符串进行比较? Netbeans不喜欢这个......我尝试将scope="request"添加到c:set但没有运气。

<c:set var="environment" value="<%=(request.getRequestURL().indexOf("localhost") > 0) ? "dev" : "uat"%>"/>
<% if (environment.equals("live")) { %>

1 个答案:

答案 0 :(得分:2)

有什么特别的原因你不会在scriptlet中完全这样做吗?如果在scriptlet

中定义了变量,您仍然可以在JSTL中访问该变量
<% String environment = (request.getRequestURL().indexOf("localhost") > 0) ? "dev" : "uat"; %>
<% if (environment.equals("live")) { %>
<c:out value="${environment}"/>

看看这里: http://melandri.net/2009/09/16/scriptlet-and-jstl-variable-sharing/

您也可以在JSTL中完全执行以下操作:

<c:set var="environment" value="${(fn:indexOf(request.requestURL, 'localhost') gt 0) ? 'dev' : 'uat'}"/>