2012-07-04 2 views
3

У нас есть @WebServlet, который аннотированный с пользовательским перехватчиком аннотацией, как это:перехватчика в @WebServlet не активировало

@WebServlet("/path") 
@CustomInterceptor 
public class InitialHtmlServlet extends HttpServlet 
{ 
    @Override 
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException 
    { 
    } 
} 

Имеем CustomInterceptor в beans.xml в/WEB-INF и перехватчик работает в другие CDI-компоненты. Однако в этом сервлете мы не можем заставить его работать.

Мы запускаем последний JBoss EAP, который должен быть похож на JBoss 7.1.1. Есть ли что-то, что мы должны сделать по-другому, чтобы перехватчик перехватил вызовы на сервлете или это вообще невозможно?

+0

Вы можете перехватить вызовы на _servlets_? – Tair

+1

Нет, это часть вопроса, как указано в: «Есть ли что-то, что мы должны делать иначе, чтобы перехватчик мог перехватывать вызовы на сервлете, или это вообще невозможно?» –

ответ

2

После некоторых копаний я также обнаружил, что это несколько сбивает с толку, что, будучи хорошим кандидатом называть его «bean», сервлет освобождается от механизма перехватчика.

Похоже, что различные части JEE6 могут или не могут поддерживать перехватчики по желанию :). Нашли некоторое обсуждение here.

+1

Спасибо за хорошую ссылку. Получил аналогичный ответ по электронной почте от RedHat JBoss. Все еще думайте, что это запутанно. Спецификации могут быть более ясными в этом вопросе ... –

Смежные вопросы