2012-12-13 3 views
0

Wicket (v1.4) 페이지의 링크를 사용하여 사용자를 외부 사이트로 리디렉션하고 싶습니다. 외부 페이지를 ModalWindow 또는 유사한 것으로 표시하는 것이 좋습니다. 내 문제는 리디렉션하려는 외부 페이지에 입력 (75000 자 이상)이라는 매우 긴 매개 변수가 있다는 것입니다. 일반적으로 POST를 통해 페이지에 액세스 할 수 있습니까? Wicket과 비슷한 기능입니까? 현재 (깨진) 구현은 다음과 같습니다.개찰구로가는 방법 큰 매개 변수로 리디렉션 하시겠습니까?

RedirectPage page; 

.... 

final ModalWindow dialog= new ModalWindow("dialog"); 
      dialog.setPageCreator(new ModalWindow.PageCreator() { 
       @Override 
       public Page createPage() { 
        return page; 
       } 
      }); 
      add(dialog); 

add(new IndicateModalAjaxSubmitLink("link") { 

       @Override 
       protected void onError(AjaxRequestTarget target, Form<?> form) { 
        target.addComponent(form); 
       } 

       @Override 
       protected void onSubmit(AjaxRequestTarget target, Form<?> form) { 
         String url = <REALLY_LONG_URL_HERE>; 
         page = new RedirectPage(url); 
         dialog.show(target); 
       } 
      }); 

편집 : 당신이 다른 선택의 여지가 없어, 난 비동기, 당신은 자바 스크립트를 통해 당신이 원하는 것을 수행하려고 할 수 있다고 생각 4096

답변

1

되는 URL의 글자 수 한도 것 같아 이 거대한 페이지 매개 변수 (AjaxRequestTarget.appendJavaScript 통해)로 웹 페이지를로드하고 결과를 모달 창에 표시합니다.

+0

이것이 작동 할 수도 있습니다. 그러나 구현 한 해결책이 아닙니다. 대신 나는 다른 서블릿을 통해로드되도록 외부 사이트에 대한 호출을 다시 작업했습니다. 이 새 서블릿은 원래의 wicket app에서 큰 매개 변수로로드되어 호출되면 외부 사이트로 전달합니다. (간단히 말해서, 그것은 정말로 엉망입니다.) 도와 줘서 고마워, 고마워. – noddy

관련 문제