GWT request payload need

If you look below, my server payload when I made an RPC call in my application

7|0|14|http://domain.com/ager-online/tracklay/|7FCCBC6F7B44BB2BEB84AAB8B47DB2E4|com.d.g4.consumer.w.client.rpcservice.ConsumerService|placeService|java.util.List|java.util.ArrayList/4159755760|co.g.consumer.wager.client.model.ConsumernseType/2494043886|java.lang.Double/858496421|java.lang.Integer/3438268394|2|1|WIN|java.lang.Long/4227064769|java.util.Date/3385151746|1|2|3|4|1|5|6|1|7|8|2|8|2|9|1|10|11|11|12|13|Co3|14|**Uzc1OKs**|9|309158|-5|

I know that it serializes and sends data to the server. What I want to know is the keys in the middle. for example Uzc1OKs I marked them in the request.

What are they?

Any ideas?

+5
source share
3 answers
+1
source

You can use GWT RPC as follows on the client:

Service Creation

 private void refreshWatchList() { final double MAX_PRICE = 100.0; // $100.00 final double MAX_PRICE_CHANGE = 0.02; // +/- 2% StockPrice[] prices = new StockPrice[stocks.size()]; for (int i = 0; i < stocks.size(); i++) { double price = Random.nextDouble() * MAX_PRICE; double change = price * MAX_PRICE_CHANGE * (Random.nextDouble() * 2.0 - 1.0); prices[i] = new StockPrice(stocks.get(i), price, change); } updateTable(prices); } 

Service definition

 @RemoteServiceRelativePath("stockPrices") public interface StockPriceService extends RemoteService { StockPrice[] getPrices(String[] symbols); } 

Service implementation

 public class StockPriceServiceImpl extends RemoteServiceServlet implements StockPriceService { public StockPrice[] getPrices(String[] symbols) { // TODO Auto-generated method stub return null; } } 

Calling a service from a client and calling a remote call:

 private ArrayList<String> stocks = new ArrayList<String>(); private StockPriceServiceAsync stockPriceSvc = GWT.create(StockPriceService.class); private void refreshWatchList() { // Initialize the service proxy. if (stockPriceSvc == null) { stockPriceSvc = GWT.create(StockPriceService.class); } // Set up the callback object. AsyncCallback<StockPrice[]> callback = new AsyncCallback<StockPrice[]>() { public void onFailure(Throwable caught) { // TODO: Do something with errors. } public void onSuccess(StockPrice[] result) { updateTable(result); } }; // Make the call to the stock price service. stockPriceSvc.getPrices(stocks.toArray(new String[0]), callback); } 

This is mainly RPC.

Your

In the middle

probably the result of serializing your objects. If you don't like this, you can also use the GWT RequestBuilder .

 RequestBuilder requestBuilder = new RequestBuilder(requestMethod, url); requestBuilder.setHeader("Content-Type", "application/json"); requestBuilder.setRequestData(bodyString); requestBuilder.setCallback(new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { callback.onResponse(response.getStatusCode(), response.getText()); } @Override public void onError(Request request, Throwable exception) { callback.onError(new Exception(exception)); } }); try { requestBuilder.send(); } catch(RequestException ex) { callback.onError(ex); } 

When using RequestBuilder you have more control over the format and what is being transported.

+1
source

GWT by default uses protocol protocols as a serialization mechanism. You can find here: Protocol Buffers

0
source

All Articles