2014-07-13 3 views
0

모든 DWR 3.0 요청이 Spring 2.5 HandlerAdapter 인터셉터를 가로 채길 원했습니다. 다음은 app-servlet.xml 설정입니다.DWR 및 스프링 인터셉터 설정

<dwr:controller id="dwrController" debug="true" /> 
<dwr:url-mapping interceptors="myInterceptors" /> 
<dwr:configuration /> 

<util:list id="myInterceptors" > 
    <!-- Interceptors --> 
    <bean id="roleInterceptor" class="mypackage.RoleInterceptor"> 
    <property name="userRoleDAO" ref="userRoleDAO" /> 
    <property name="pageNavigationRepository" ref="pageNavigationRepository" /> 
    <property name="portalAuditRepository" ref="portalAuditRepository" /> 
    </bean> 
</util:list> 

다음은 DWR 컨트롤러의 web.xml 설정입니다.

<servlet> 
    <servlet-name>dwr</servlet-name> 
    <servlet-class>org.directwebremoting.spring.DwrSpringServlet</servlet-class> 
    <init-param> 
     <param-name>debug</param-name> 
     <param-value>true</param-value> 
    </init-param> 
</servlet> 
<servlet-mapping> 
    <servlet-name>dwr</servlet-name> 
    <url-pattern>/dwr/*</url-pattern> 
    </servlet-mapping> 

이 설정은 작동하지 않으며 DWR 요청은 roleInterceptor를 호출하지 않습니다. 비 dwr 스프링 요청에 대해 동일한 인터셉터를 사용하고 인터셉터를 호출합니다. 나는 여기에 아무것도 놓친 적이 있습니까?

+0

일치하는 URL 패턴은 무엇입니까? – scunliffe

답변

1

마지막으로 몇 가지 조사를 마친 후이 작업을 수행했습니다. dwr 컨트롤러 맵핑과 dwr url maapping은 모든 My/dwr/* 요청을 처리하기 위해 DwrSpringServlet 대신 Spring DispatcherServlet을 사용하는 경우에만 작동합니다. web.xml을 업데이트하고 Spring MVC 인터셉터 빈을 통해 모든 dwr AJAX 요청을 인터셉트 할 수있었습니다.