ブラウザで新しい空白からpdfファイルを開きたい:
String sCommand = GWT.getHostPageBaseURL() + "requiredPDF?vCompanyName="+ companyName + "&" +
"vCurDate=" + new Date().getTime() + "&" +
sTitle +
"vReportType=" + rt.reportType +"&" +
"vChartType=" + rt.iChartType +"&" +
sParameters +
"vDetalization=" + rt.detalization + "&" +
"vGroup=" + getCheckedGroups();
Window.open(sCommand,"", "");
そしてそれはうまくいきます。ただし、 doPOST メソッドを使用したいのですが、私が理解しているように、 Window.open() は doGET メソッドでのみ機能します。doPOST のいくつかの問題を探しましたが、それらが開かず、新しいブラウザーの空白/ウィンドウが表示されます。
メソッドを使用doPOST
して結果を新しいブラウザの空白に表示する方法は?
更新。window.open() の代わりに doPOST にバインドするようにコードを変更しましたが、何も起こりません
String sURL = GWT.getHostPageBaseURL() + "requirePDF";
String sData = "vCompanyName="+ companyName + "&" +
"vCurDate=" + new Date().getTime() + "&" +
sTitle +
"vReportType=" + rt.reportType +"&" +
"vChartType=" + rt.iChartType +"&" +
sParameters +
"vDetalization=" + rt.detalization + "&" +
"vGroup=" + getCheckedGroups();
RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, sURL);
builder.sendRequest(sData, new RequestCallback() {
@Override
public void onResponseReceived(Request request, Response response) {
FormPanel formPanel = new FormPanel();
formPanel.setAction(GWT.getHostPageBaseURL() + "requirePDF");
formPanel.setMethod(FormPanel.METHOD_POST);
//formPanel.submit();
formPanel.setVisible(true);
rt.add(formPanel);
}
@Override
public void onError(Request request, Throwable exception) {
MessageBox.alert("Request error","The page doesn't open", null);
}
});