Spring Framework, Velocity 및 (부분적으로) Spring Web Flow로 작성된 webapp가 있습니다. 내 속도 템플릿 내 모든 웹 페이지에서 참조 공통 집합을 제공하기 위해Spring Web Flow Listener에서 리디렉션을 감지하는 방법은 무엇입니까?
는,이처럼 보이는 FlowExecutionListener를 작성했습니다 :
나는 그 모델에 저장된 키에 액세스 할 수@Override
public void requestSubmitted(RequestContext context)
{
Map<String, Object> model = new HashMap<String, Object>();
populateModel(model);
context.getRequestScope().putAll(new LocalAttributeMap(model));
}
속도 참조로 예 : $reference
. 일반적으로이 방법은 효과적입니다.
그러나, 흐름에서 특정 종료 지점과 같이, GET 요청을 리디렉션합니다 :
<view-state id="startOver" view="redirect:/new"/>
이 리디렉션이 새로운 요청에 302을 할 것, 모든 요청 속성이 URL 매개 변수로 설정하여, 리디렉션하려고했던 URL /new
대신 큰 URL이 필요했습니다.
요청 속성에 문자열 저장을 건너 뛸 수 있도록 흐름이 리디렉션을 반환 할 때 수신기에서 감지하고 싶습니다. (보기 이름이 "redirect :"로 시작하는지 여부와 일치 시켜서 표준 Spring MVC를 가진 인터셉터로 이것을한다.). 하지만 청취자가이를 감지 할 수있는 방법을 찾을 수없는 것 같습니다.
리디렉션 후에 URL에 요청 속성이 삽입되는 것을 방지하는 다른 방법이 있습니까?
좋은 아이디어, 많이 감사합니다! –