Как получить данные в перехватчике Struts, если мы передаем данные как тело запроса, а не как параметры URL - PullRequest
0 голосов
/ 26 июня 2019

До сих пор мы использовали jquery AJAX, и если мы хотим перехватить какие-либо параметры в перехватчике, который используется, как показано ниже

   public String intercept(ActionInvocation actionInvocation) throws Exception {

        Map<String, Object> sessionAttributes =
            actionInvocation.getInvocationContext().getSession();

        Map<String, Object> parameters =
            actionInvocation.getInvocationContext().getParameters();


        String[] sid = (String[]) parameters.get("sessionId");
    }

Теперь мы делаем запрос Rest, и все параметры передаются как тело запроса в почтальоне. Если мы используем приведенный выше код, мы не можем получить какие-либо параметры, которые передаются как тело в JSON.

struts.xml

<interceptor-ref name="json"></interceptor-ref>
<interceptor-ref name="customSessionInterceptor"></interceptor-ref>

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

Класс перехватчика

 public class SessionInitInterceptor implements Interceptor {
       privtae String sessionId;
       //getter and setters

       @Override
       public String intercept(ActionInvocation actionInvocation) throws 
       Exception {
          //Want to catch sessionid here which is passed from request body
       }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...