2012-09-06 7 views
3

조직에 SSO 솔루션으로 CAS를 사용하려고합니다. 이 솔루션을 사용하는 응용 프로그램 중 하나는 MVP 플랫폼으로 GWTP를 사용하는 GWT 응용 프로그램입니다. CAS 및 GWT - CAS 리디렉션에서 GWT 장소 유지

예를 들어, 내 응용 프로그램에서 일부 내부 장소로 이동하려고 :

http://myapp.com/myapp.html#!somePlace 

CAS에 필터는 내가 인증 아니에요, 그리고 내가 CAS 로그인 페이지로 리디렉션 인식하고 있습니다. 이것은 예상된다. 하지만 우리가 알고있는 것처럼 내부 장소 상태 (#! somePlace)는 서버로 보내지지 않으므로 CAS 리디렉션 요청에 보관되지 않습니다. 따라서 CAS 로그인 후 간단히 다음으로 리디렉션됩니다.

http://myapp.com/myapp.html 

그래서 요청한 내부 장소를 재현 할 수 없습니다.

누구든지 CAS 및 GWT를 통합하고이 문제를 해결하거나 해결해 본 경험이 있습니까?

감사

답변

3

GitHub의에서 현재 문제에 대한 pull request가있다.

간단히 말해서 초기 URL의 앵커 부분이 CAS 서버 응용 프로그램의 로그인 페이지의 "service"매개 변수에 추가되는 한 가장 간단한 해결책은 "onsubmit"이벤트 처리기를 로그인 양식에 추가하는 것입니다 페이지. 이벤트 처리 함수에서 현재 위치에서 "#"다음에 부분을 추출해야하므로 해당 부분을 form.action의 값에 추가해야합니다.