누구나 이와 같은 작업을 수행했는지 묻고 싶습니다. 기본적으로 paypal 익스프레스 체크 아웃 기능과 같습니다 :Jersey Servlet과 JSF Backing Bean 사이의 범위 공유
1.) 가맹점에서 결제 할 항목을 선택합니다.
2.) 로그인 페이지로 리디렉션됩니다. 제 경우에는 Jersey Rest Servlet으로 구현했습니다. 게시물에서 세션 EJB 백킹 빈에 데이터를 저장하고 Response.seeOther()를 호출하여 로그인 페이지 (JSF)로 리디렉션합니다.
3) 로그인이 성공하면 게시 된 트랜잭션 데이터가 유지되어야합니다.
하지만 세션 백킹 빈을 호출 할 수 있지만 게시 된 데이터를 해당 빈 내부의 변수에 저장하는 것으로 보입니다. 로그인 (로그인 확인)을 클릭하고 동일한 bean에 다시 액세스하면 게시 된 데이터를 저장하는 변수가 null이됩니다.
그래서 세션 범위가 Jersey Rest Servlet과 ejb의 세션 범위 백업 빈간에 공유되지 않습니까?
기타 좋은 방법이 있습니까?
감사합니다,
czetsuya
이제 알았습니다. 불행하게도 애플리케이션 스코프는 좋은 생각이 아닙니다. 동시에 여러 체크 아웃 트랜잭션을 수행 할 수 있으며 게시 된 데이터를 1 개의 애플리케이션 범위 변수에 저장하고 싶지 않기 때문입니다. – czetsuya
그건지도가 디자인 한 것입니다. (물론 응용 프로그램 서버가 내부적으로 병렬 세션을 처리하는 방법도 있습니다 :-) 또 다른 옵션은 데이터베이스에 데이터를 저장하는 것이지만 취소 된 로그인으로 피들을 써야 할 수도 있습니다. –
불행히도 데이터베이스가 가장 간단한 방법이지만 쓰레기 데이터가 데이터베이스에 쌓이기 때문에 최상의 옵션이 아닐 수도 있습니다. 이전에 이런 유형의 기능을 구현하지 않았기 때문에지도가 확실하지 않습니다. 따라서 사용자 (1 대 1)에 묶일 주문지도가있는 것처럼 보입니까? – czetsuya