我正在为审计日志目的编写一个定制的拦截器。我想在拦截器中获取会话属性和请求属性。
例如:我将Username
进入会话并且我也正在接受。
但挑战是:我将一个 bean 定义为审计 bean,我在其中为 bean 设置一些值
if (this.userName.equals("admin")) {
user.setUserName(this.userName);
sessionAttributes.put("USER", user);
auditBean.setPerm("login success");
requestAttributes.put("auditBean", auditBean);
return "success";
} else {
auditBean.setPerm("Login Failed initiaqlized");
requestAttributes.put("auditBean", auditBean);
addActionError(getText("error.login"));
return "error";
}
这个请求属性是ServletRequestAware
obj。但是我无法将这个审计 bean 检索到拦截器中,请对此提供帮助。
Map<String, Object> sessionAttributes = invocation.getInvocationContext().getSession();
实现这样的会话。
Map<String, Object> requestAttributes = invocation.getInvocationContext().getParameters();
上面我无法检索请求参数。它显示了 JSP 请求参数,但不是我设置的。