0
새 서블릿을 만들고 함께 필터 할 때이 작업을 수행하는 방법에 대한 예제가 많이 있지만 web.xml에 이미 정의 된 필터를 사용하고 싶습니다.3.0 사양을 사용하여 동적으로 서블릿을 만들 때 기존의 정적으로 생성 된 필터에 어떻게 등록합니까?
새 서블릿을 만들고 함께 필터 할 때이 작업을 수행하는 방법에 대한 예제가 많이 있지만 web.xml에 이미 정의 된 필터를 사용하고 싶습니다.3.0 사양을 사용하여 동적으로 서블릿을 만들 때 기존의 정적으로 생성 된 필터에 어떻게 등록합니까?
이 (A ServletListener에서) 작동합니다
는ServletContext sc = event.getServletContext();
// dynamically register servlet
ServletRegistration.Dynamic reg = sc.addServlet("MyServlet", MyServlet.class);
reg.addMapping("/MyUrl/*");
// register new servlet with an existing filter
FilterRegistration fr = sc.getFilterRegistration("MyExistingFilterInWebXML");
EnumSet<DispatcherType> all = EnumSet.allOf(DispatcherType.class);
fr.addMappingForServletNames(all, false, "MyServlet");
솔루션을 게시 해 주셔서 감사합니다. – stdunbar
불행하게도 그것은 다른 방법으로 주위 - 필터가 서블릿에 적용하고 필터를 서블릿 "이름"의 목록을 제공 할 수 있습니다. 필터에 대한 web.xml을 수정할 수 있습니까? – stdunbar
아니요, 문제의 요점입니다. – rmp