실행 방법을 보안하기 위해 struts2 액션에 @Secured({"ROLE_ADMIN"})
이 있습니다. execute 메소드에서 액션의 멤버 변수에 메시지를 할당 한 다음 SUCCESS를 반환하고 JSP 페이지에서 끝납니다. 페이지에서 액션 구성원 변수를 <sproperty>
으로 검색합니다.스프링 보안 및 스트럿츠 2
private String greeting;
public String execute() throws Exception {
this.greeting="Hello";
return SUCCESS;
}
// getters and setters for greeting
...
<s:property value="greeting" />
문제는 보안 주석이 존재하는 경우 JSP는 멤버 변수에 대해 아무것도 표시되지 않습니다하지만 @Secured
이 제거 될 때 모든 것이 제대로 작동하고 멤버 변수로 설정 한 메시지를 표시합니다.
실제 보안이 정상적으로 작동하는 것으로 보입니다.하지만 주석을 통해 활성화되면 멤버 변수 (또는 액션 인스턴스)가 값 스택으로 이동하지 않습니다.
오류 메시지가 표시되지 않습니다.
나는 S2 앱과 함께 스프링 시큐리티를 사용하지 않았지만, 속성 태그는'getGreeting()'을 호출 할 것인데, 주석을 달 수도있다. 그렇다면 'ModelDriven'을 고려할 수도 있습니다. –