我正在使用 Struts2 构建 Web 应用程序,我的 BaseAction
中有一个后端方法类,所有其他 Action 类扩展它的类,如下所示:
public boolean isUserFullyLogged() {
final Boolean isLogado = (Boolean) this.retrieveSessionAttribute(Constantes.LOGADO);
return (isLogado != null) && isLogado.booleanValue();
}
我希望在我的一个 JSP 中使用它来显示或不显示某些内容,我已经尝试了三种不同的方式,如下所示:
-
<s:if test="#userFullyLogged">Content</s:if>
-
<s:if test="%{#userFullyLogged}">Content</s:if>
-
<s:if test="userFullyLogged">Content</s:if>
但是以上都不起作用,根本就没有调用该方法。谁能告诉我正确的语法?
最佳答案
无需更改方法名:
<s:if test="isUserFullyLogged()">Content</s:if>
请注意,如果您需要阻止整个页面,而不是单个功能,您应该在拦截器内部进行这种检查,方法是将包含自定义 LoginInterceptor
的拦截器堆栈应用到所有只有经过身份验证的用户才需要打开的操作。
关于java - 是否可以在 JSP 中访问后端方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22769224/