스프링 시큐리티에서 acl 가져온후..
Spring2010. 5. 13. 13:06
acl 값을 가져 온 후에 이 값들을 맵에 담게 된다.
근데 이 맵의 키가 ObjectIdentityImpl 인데, 요고에 담기는 키의 값들과, acl 값을 가져올 ObjectIdentityImpl 값이 같아야
acl 값들을 제대로 가져 올 수 있다.
근대, Object id 값을 비교 하는데 대상 Object의 id는 hashcode 값이 있는데, 맵에 담겨질 object의 id에는 hashcode 값이 없다.
하여 map.containsKey( target)으로 하여 비교 하면 hashcode로 비교를 하는데, 여기서 에러가 나서
voter가 AccessDenied로 투표를 한다.
꿱..
어려워 -_-
그래서 이거 넘어 갈려면.... hashcode 값도 담겨가게 하던가,
String 값 비교로 해야 할 것 같은데..
근데 전에 잘 된거 같은데. -_-;;
이 무슨 또 삽질을 -,.-;;
ObjectIdentityRetrievalStrategy를 구현한 클래스에서 getObjectIdentity 메서드가 ObjectIdentityImpl를 리턴 하는데..
여기서 스트링으로 identity를 주니 당연히 안되지 -_-;; long 값으로 주도록 변경.
이제 다음 단계에 접어 들어간다.
일주일 휴가 했더니 다 까먹었어.