Проблема сериализации HttpServletRequest с Redis - PullRequest
0 голосов
/ 22 апреля 2020

Приложение, над которым я работаю, использует Redis, и насколько я знаю, Redis пытается сериализовать все объекты, которые хранятся в сеансе. У меня есть строка ниже в моем коде, которая беспокоит меня: -

httpServletRequest.getSession.setAttribute(some_key, someObjectFactory.someMethod(httpServletRequest);

Я получаю исключение ниже, которое выбрасывается из вышеуказанной строки кода.

ava.io.IOException: java.lang.RuntimeException: Class org.springframework.security.web.servletapi.HttpServlet3RequestFactory$Servlet3SecurityContextHolderAwareRequestWrapper does not implement Serializable or externalizable

" Класс SomeObjectFactory "выглядит следующим образом, после того, как я сделал его для реализации Serializable

@Componend
public class SomeObjectFactory implements Serializable {

//ssvuid declaration

private Object1 object1;
private Object2 object2;

@Autowired
public SomeObjectFactory(Object1 object1, Object2 object2) {
   this.object1 = object1;
   this.object2 = object2;
}

public SomeVOObject someMethod(HttpServletRequest request){
   return new SomeVOObject(request , new SomeObjectMapper(object1, object2)
}

Я сделал все зависимые объекты реализующими Serializable, и все, но я все еще получаю" не реализует Serializable или externalizable "исключение. Я сомневаюсь, что это связано с тем, что SomeVOObject имеет httpServletRequest также в качестве первого аргумента в конструкторе, а httpServletRequest не может быть сериализован.

Пожалуйста, сообщите, если какое-либо решение уже доступно или какой-либо подход для преодоления этого.

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