Невозможно установить значение в области сеанса из сервлета в приложении ADF - PullRequest
0 голосов
/ 10 октября 2018

Я использую Google oath2.0 в своем приложении ADF.После того, как пользователь предоставил свои учетные данные, он передает поток на Servlet (обратный вызов servlet), где я получаю информацию о пользователе и сохраняю ее в сеансе. После сохранения сеанса я перенаправляю ответ на другую страницу (page1.jsf) где я отображаю информацию пользователя из области сеанса, используя #{sessionScope.user_info}.Проблема даже после сохранения значений в области сеанса в CallbackServlet.java я не могу получить эти значения.это ничего не возвращает.

вот мой код

@WebServlet(name = "CallbackServlet", urlPatterns = { "/callbackservlet" })
public class CallbackServlet extends HttpServlet {
    private static final String CONTENT_TYPE = "text/html; charset=UTF-8";

    public void init(ServletConfig config) throws ServletException {
        super.init(config);
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType(CONTENT_TYPE);
        String state = request.getParameter("state");
        String code = request.getParameter("code");
        MyGoogleHelperClass ghc = new MyGoogleHelperClass();

        String json = ghc.getUserInfoJson(code);
        System.out.println(state+"-"+json);

        ADFContext.getCurrent().getSessionScope().put("user_info", json);


        response.sendRedirect("http://127.0.0.1:7101/GoogleAdf-ViewController-context-root/faces/page1.jsf");


    }
} 

в page1.jsf

<h:outputText value="#{sessionScope.user_info}" id="ot1"/>

Что я здесь не так делаю?servlet является частью моего adf приложения.

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