Как внедрить бины, аннотированные типом области, в неявный архив? - PullRequest
0 голосов
/ 09 мая 2019

Я хочу добавить bean-компоненты, аннотированные типом области действия, в неявный архив (без beans.xml). Как я могу это сделать?

Я пытаюсь внедрить bean-компонент SessionScoped (bean_session) в сервлет, но он всегда возвращает ноль. Посоветуйте, пожалуйста, как вводить бины, аннотированные типом области.

Мой код выглядит следующим образом:

package test.web;

import java.io.IOException;

import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

import test.bean.SessionScopedBean;

@WebServlet("/_test")
public class TestServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    static final Logger logger = LogManager.getLogger();

    @Inject
    SessionScopedBean bean_session;

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        if (null == this.bean_session) {
            logger.debug("{} is null.", SessionScopedBean.class);
        } else {
            logger.debug("{} before: {} after: {}", this.bean_session.getClass(), this.bean_session.getCount(),
                    this.bean_session.increase());
        }

    }

}

Кстати, @SessionScoped аннотируется в SessionScopedBean.java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...