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); 
                }
            });

编辑:似乎 url 上的当前字符限制是 4096。

4

1 回答 1

1

如果您没有其他选择,我认为您可以尝试通过 Javascript 做您想做的事,使用这个巨大的页面参数(通过AjaxRequestTarget.appendJavaScript)异步加载网页并将结果显示在您的模态窗口中。

于 2012-12-15T08:14:27.890 回答