나는 스프링 서비스를 가지고 있으며 스프링 보안 표현에서 현재 사용자와 결합 된 서비스의 메소드를 사용하고자한다. 나는 이것이 가능하다고 믿게 만들었던 another question on stackoverflow을 보았다. 나는 봄 3.1.2를 사용하고있다. 나는이 설정 내 웹 응용 프로그램을 실행할 때스프링 보안 표현식에서 스프링 서비스 메소드를 사용하려면 어떻게해야합니까?
<sec:authorize access="orgService.isOrgAdmin(principal.name)">
USER IS ORG ADMIN
</sec:authorize>
그러나, 내가 할 내가 해봤
org.springframework.expression.spel.SpelEvaluationException: EL1008E:(pos 0): Field or property 'orgService' cannot be found on object of type 'org.springframework.security.web.access.expression.WebSecurityExpressionRoot'
:
@Service("orgService")
public class DefaultOrganizationService implements OrganizationService {
@Override
@Transactional
public boolean isOrgAdmin(String username)
{
return true;
}
}
는 그 다음 JSP, 나는 이런 식으로 뭔가를 "@orgService ..."및 "orgService ..."가 모두 포함 된 표현
가능한 작업은 무엇입니까, 아니면 01을 구현해야합니까??
'@'이 있든 없든 동일한 오류가 발생합니까? 둘 다 게시하십시오. 게시 한 오류는'@ '이없는 경우에 적합합니다. 나는'@ orgService..'에 대한 에러 메시지에 대해 궁금합니다. –
"@"(프린시 펄 관련)과 다른 오류가있었습니다. "@"를 사용하면 실제로 스프링 보안이 빈 이름을 인식하게됩니다. – Jay