2012-12-13 20 views
0

我想使用我的Wicket(v1.4)頁面中的鏈接將用戶重定向到外部網站。用ModalWindow或類似的方法顯示外部頁面。我的問題是我想重定向的外部頁面有一個非常長的參數作爲輸入(> 75000個字符)。通常,我會通過POST訪問頁面,這與Wicket可能類似嗎?我目前(破壞)的實施如下。如何使用大參數重定向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); 
       } 
      }); 

編輯:好像在URL目前的字數上限爲4096

回答

1

如果你沒有任何其他的選擇,我想你可以嘗試做你想做的通過JavaScript,異步使用這個巨大的頁面參數加載網頁(通過AjaxRequestTarget.appendJavaScript)並在模態窗口中顯示結果。

+0

我懷疑這可能工作,但它不是我已經實施的解決方案。相反,我重新調用了外部網站,以便它通過另一個servlet加載。這個新的servlet從原來的wicket應用程序的大參數中加載,並在調用後將其傳遞到外部網站。 (簡而言之,它真的很混亂)。感謝您的幫助,我欣賞它。 – noddy