我正在使用一些旧代码,有时在会话中有一个类似于
session.setAttribute("com.org.something.Object",someObject);
现在尝试使用jstl在jsp中访问它有点困难,因为如果我像往常一样会尝试这样做:
${sessionScope.com.org.something.Object.someFieldGetter}
正如我们大多数人所能想象的那样,它将失败,因为会话范围中没有com对象。我也试过
${sessionScope.'com.org.something.Object'.someFieldGetter}
并且引发了一个分析错误。
有谁知道如何解决这个问题,以便我可以像session.getAttribute("com.org.something.Object")通过jstl一样正确地获取对象?
session.getAttribute("com.org.something.Object")
谢谢。
使用方括号语法。
${sessionScope['com.org.something.Object'].someFieldGetter} 应该这样做。
${sessionScope['com.org.something.Object'].someFieldGetter}