2012-03-12 77 views
0

我第一次尝试使用GET方法向服务器发出请求,并且它工作正常。我的请求会处理一个文件,然后作为pdf文件返回,并在新的浏览器上打开。我所做的是重写doGet()方法。因为有一个GET请求仅限于少数参数,我必须将其更改为doPost() mehod,但问题是它不能被overrided,因为该方法是最终的。在GWT的POST请求

HTML FORM

,我想发生的情况是这样的:

<form method="post" action="http://differentdomain.com/appserv/appserv.php"> 
    <input type="hidden" name="fwi_script" value="app/custom/cusapp/interface" /> 
    <input type="hidden" name="trx" value="&lt;trx&gt; 
    &lt;productid&gt;PROD1&lt;/productid&gt; 
    ....../** transaction details here */ 
    &lt;/trx&gt;" /> 

    <input type="hidden" name="fcompanyid" value="SHOST101" /> 
    <input type="hidden" name="fwi_action" value="PRINT_PENDING_SALES" /> 
    <input type="hidden" name="fexcel" value="0" /> 
    <input type="submit" value="Submit" /> 
</form> 

这个HTML表单将在用户点击后命令按钮打印每一笔交易的定单票据。

任何人都可以给一个想法POST请求GWT服务器?我想我不能这样做RequestBuilder因为我将有SOP问题,因为我将连接到一个不同的域。

回答

1

要构建与您的问题非常接近的HTML,请从FormPanel开始,然后添加所需的表单字段。确保使用正确的操作和方法配置FormPanel,并向添加到其中的字段提供名称(可能为值)。要启动请求,可以调用submit()

0

解决方法是对您的服务器进行正常的GWT RPC调用,并让服务器向位于不同域上的服务器发出POST请求。

+0

关于使rpc做的工作,我可以使用jav.net。*为此来处理和建立连接? – wens 2012-03-13 01:18:11

+0

从您的服务器代码中,您可以使用任何您喜欢的JRE类或第三方库。 – Strelok 2012-03-13 03:26:59