JSTL函数fn:split和fn:join不起作用

时间:2013-03-26 00:23:45

标签: java jsp jstl

以下是无效的代码片段:

<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%! String[] strings = {"happy","in 7th heaven","on cloud 8"}; %>
${fn:join(strings , '&')}
${fn:split("some/word/goes/here", "/")}

非常感谢我提出的任何问题,谢谢你。

1 个答案:

答案 0 :(得分:1)

您正在尝试将oldschool scriptlet 与现代EL混合使用。这不会起作用。 EL在页面,请求,会话和应用程序范围中搜索变量作为属性。它根本不搜索在(全局) scriptlet 范围内声明的变量。

为了准备EL的变量,您需要将其设置为所需范围内的属性。通常,您可以使用servlet或过滤器,或者使用请求/会话/上下文侦听器,但是为了快速原型设计,您可能仍然希望使用旧式 scriptlet 。这是一个将它放在请求范围内的例子:

<%
    String[] strings = { "happy", "in 7th heaven", "on cloud 8" };
    request.setAttribute("strings", strings);
%>

另见: