Generic, AOP 관련 질문입니다.
- 작성자 :
- 양*일
- 작성일 :
- 2015-06-19 14:06:43
- 조회수 :
- 850
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
GenericController 를 만들어서 각 개별 Controller에서 상속받아서 사용하고 있는데요
Controller에 AOP를 사용할 경우
호출하는 requestmapping는 /comsol/sys/auth/list.do 인데
메소드에는 /list.do 만 걸려있어서 이게 맵핑을 못시켜준다고 에러(404 에러임)가 나오는거 같습니다.
지금 제가 생각하는게 맞는건지요? 그리고 이걸 해결할 방법이 있는지요?
소스와 로그는 밑에 간단히 적었습니다.
로그
Authorization successful
RunAsManager did not change Authentication object
/comsol/sys/auth/list.do at position 13 of 13 in additional filter chain; firing Filter: 'FilterSecurityInterceptor'
/comsol/sys/auth/list.do reached end of additional filter chain; proceeding with original chain
DispatcherServlet with name 'action' processing POST request for [/comsol/sys/auth/list.do]
Looking up handler method for path /comsol/sys/auth/list.do
Did not find handler method for [/comsol/sys/auth/list.do]
No mapping found for HTTP request with URI [/comsol/sys/auth/list.do] in DispatcherServlet with name 'action'
Successfully completed request
Chain processed normally
SecurityContextHolder now cleared, as request processing completed
dispatcher.xml
<aop:config>
<aop:pointcut id="point" expression="execution(* egovframework.cas..*Controller.*(..))" />
<aop:aspect ref="sys">
<aop:around pointcut-ref="point" method="goMethod" />
</aop:aspect>
</aop:config>
<bean id="sys" class="egovframework.cas.comsol.sys.web.SysAspect" />
AuthController.java
@Controller
@RequestMapping("/comsol/sys/auth/*")
public class AuthController extends GenericController<AuthVO, AuthService> {
protected AuthController() {
super(AuthVO.class, AuthService.class);
}
}
GenericController.java
public class GenericController<T, S extends GenericService<T, ? extends GenericMapper<T>>> implements ApplicationContextAware, InitializingBean {
@RequestMapping({"/list.do","/search.do"})
public String list(@ModelAttribute T entity,
HttpServletRequest request, ModelMap model) throws Exception {
..............................
}
}
Controller에 AOP를 사용할 경우
호출하는 requestmapping는 /comsol/sys/auth/list.do 인데
메소드에는 /list.do 만 걸려있어서 이게 맵핑을 못시켜준다고 에러(404 에러임)가 나오는거 같습니다.
지금 제가 생각하는게 맞는건지요? 그리고 이걸 해결할 방법이 있는지요?
소스와 로그는 밑에 간단히 적었습니다.
로그
Authorization successful
RunAsManager did not change Authentication object
/comsol/sys/auth/list.do at position 13 of 13 in additional filter chain; firing Filter: 'FilterSecurityInterceptor'
/comsol/sys/auth/list.do reached end of additional filter chain; proceeding with original chain
DispatcherServlet with name 'action' processing POST request for [/comsol/sys/auth/list.do]
Looking up handler method for path /comsol/sys/auth/list.do
Did not find handler method for [/comsol/sys/auth/list.do]
No mapping found for HTTP request with URI [/comsol/sys/auth/list.do] in DispatcherServlet with name 'action'
Successfully completed request
Chain processed normally
SecurityContextHolder now cleared, as request processing completed
dispatcher.xml
<aop:config>
<aop:pointcut id="point" expression="execution(* egovframework.cas..*Controller.*(..))" />
<aop:aspect ref="sys">
<aop:around pointcut-ref="point" method="goMethod" />
</aop:aspect>
</aop:config>
<bean id="sys" class="egovframework.cas.comsol.sys.web.SysAspect" />
AuthController.java
@Controller
@RequestMapping("/comsol/sys/auth/*")
public class AuthController extends GenericController<AuthVO, AuthService> {
protected AuthController() {
super(AuthVO.class, AuthService.class);
}
}
GenericController.java
public class GenericController<T, S extends GenericService<T, ? extends GenericMapper<T>>> implements ApplicationContextAware, InitializingBean {
@RequestMapping({"/list.do","/search.do"})
public String list(@ModelAttribute T entity,
HttpServletRequest request, ModelMap model) throws Exception {
..............................
}
}
A
안녕하세요.
표준프레임워크 센터 입니다.
묻고 답하기 공간은 표준프레임워크에 대한 주제만 다루고 있습니다.
말씀하신 내용은 업무적인 내용과 관련 있는거 같습니다.
죄송합니다.
표준프레임워크 센터 입니다.
묻고 답하기 공간은 표준프레임워크에 대한 주제만 다루고 있습니다.
말씀하신 내용은 업무적인 내용과 관련 있는거 같습니다.
죄송합니다.