2015-01-18 2 views
0

스프링 부트와 스프링 ws를 사용하여 웹 서비스와 클라이언트를 게시했습니다. Spring WS에서 세션을 어떻게 관리 할 수 ​​있습니까? 나는 봄에서하지만 결과 세션 범위를 사용하는 것을 시도했다 BindingProvider.SESSION_MAINTAIN_PROPERTY ... 당신은 TransportContext를 사용하여 HTTP 세션에 액세스 할 수 있습니다Spring WS 세션 유지 보수

+0

이상적으로 서비스는 무국적이어야하며, 일반적으로 웹 서비스에 무대 정체를 가두려고하면 더 큰 문제가됩니다. 왜 그것을 필요로합니까? –

+0

그래, 그 점에 동의한다. 하지만 우리는 분산 된 분류자를 구현해야한다는 배움을 얻었고 학습 된 객체를 저장해야한다는 요청 (나는 한 번만 학습 과정을 실행해야 함)을 얻었으므로 데이터베이스에 직렬화 및 저장하는 대신 세션을 사용하기로 결정했습니다. 나는 이것을 따라하려고 시도했다 : https://blogs.oracle.com/artf/entry/maintaining_sessions_using_jax_ws –

답변

1

: 요청 맥락에서 JAX-WS에서 는 대한 속성이있다 :

TransportContext context = TransportContextHolder.getTransportContext(); 
HttpServletConnection connection = (HttpServletConnection)context.getConnection(); 
HttpServletRequest request = connection.getHttpServletRequest(); 
HttpSession session = request.getSession(); 

그러나 M.Deinum과 마찬가지로 웹 서비스는 일반적으로 상태를 유지하려고 시도합니다.