監査ログ用にカスタマイズされたインターセプターを作成しています。インターセプターでセッション属性とリクエスト属性を取得したい。
例:私はUsername
セッションに設定され、私も取得しています。
しかし、課題は次のとおりです。1 つの 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 リクエスト パラメータを表示していますが、実際に設定したわけではありません。