此处使用的语法(使用参数调用非getter方法)仅在EL 2.2中受支持。您似乎没有针对支持Servlet 3.0 / JSP 2.2 / EL
2.2(Tomcat 7,Glassfish 3等)的容器,或者
web.xml似乎未声明符合Servlet 3.0规范。在EL
2.2之前,
foo()仅将语法识别为EL函数,并且应采用这种形式
${prefix:functionName(arg1,arg2)}。这也是异常试图告诉您的内容。如果您确实没有针对Servlet 3.0容器和/或无法更改
web.xml遵循的Servlet 3.0,则需要使用JSTL
fn:split()(是的,这是一个真正的EL函数):
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>...<c:set var="parts" value="${fn:split(i, '#')}" /><option value='${parts[0]}'>${parts[1]}</option>


