在自定义EL函数中访问JSP Context

Vir*_*ren 7 jsp el

如何在自定义EL函数中访问JSP上下文.

ksc*_*eid 8

您必须将其显式包含为实现EL函数的方法的参数.

实现EL功能的Java方法:

public static Object findAttribute(String name, PageContext context) {
    return context.findAttribute(name);
}
Run Code Online (Sandbox Code Playgroud)

EL功能的TLD条目:

<function>
    <name>findAttribute</name>
    <function-class>kschneid.Functions</function-class>
    <function-signature>java.lang.Object findAttribute(java.lang.String, javax.servlet.jsp.PageContext)</function-signature>
</function>
Run Code Online (Sandbox Code Playgroud)

在JSP中的用法:

<%@ taglib prefix="kfn" uri="http://kschneid.com/jsp/functions" %>
...
<c:if test="${empty kfn:findAttribute('userId', pageContext)}">...</c:if>
Run Code Online (Sandbox Code Playgroud)