public class JsonpRequestBuilder extends Object
<callback>(<json>);where <callback> is the url parameter (see
setCallbackParam(String)
), and
<json> is the response to the request in json format.
This will result on the client to call the corresponding AsyncCallback.onSuccess(Object)
method.
If needed, errors can be handled by a separate callback:
<failureCallback>(<error>);where <error> is a string containing an error message. This will result on the client to call the corresponding
AsyncCallback.onFailure(Throwable)
method. See
setFailureCallbackParam(String)
.
Example using JSON Google Calendar GData API:
String url = "http://www.google.com/calendar/feeds/[email protected]/public/full" + "?alt=json-in-script"; JsonpRequestBuilder jsonp = new JsonpRequestBuilder(); jsonp.requestObject(url, new AsyncCallback<Feed>() { public void onFailure(Throwable throwable) { Log.severe("Error: " + throwable); } public void onSuccess(Feed feed) { JsArray<Entry> entries = feed.getEntries(); for (int i = 0; i < entries.length(); i++) { Entry entry = entries.get(i); Log.info(entry.getTitle() + " (" + entry.getWhere() + "): " + entry.getStartTime() + " -> " + entry.getEndTime()); } } });This example uses these overlay types:
class Entry extends JavaScriptObject { protected Entry() {} public final native String getTitle() /*-{ return this.title.$t; }-*/; public final native String getWhere() /*-{ return this.gd$where[0].valueString; }-*/; public final native String getStartTime() /*-{ return this.gd$when ? this.gd$when[0].startTime : null; }-*/; public final native String getEndTime() /*-{ return this.gd$when ? this.gd$when[0].endTime : null; }-*/; } class Feed extends JavaScriptObject { protected Feed() {} public final native JsArray<Entry> getEntries() /*-{ return this.feed.entry; }-*/; }
Constructor and Description |
---|
JsonpRequestBuilder() |
Modifier and Type | Method and Description |
---|---|
String |
getCallbackParam()
Returns the name of the callback url parameter to send to the server.
|
String |
getFailureCallbackParam()
Returns the name of the failure callback url parameter to send to the
server.
|
int |
getTimeout()
Returns the expected timeout (ms) for this request.
|
JsonpRequest<Boolean> |
requestBoolean(String url,
AsyncCallback<Boolean> callback) |
JsonpRequest<Double> |
requestDouble(String url,
AsyncCallback<Double> callback) |
JsonpRequest<Integer> |
requestInteger(String url,
AsyncCallback<Integer> callback) |
<T extends JavaScriptObject> |
requestObject(String url,
AsyncCallback<T> callback)
Sends a JSONP request and expects a JavaScript object as a result.
|
JsonpRequest<String> |
requestString(String url,
AsyncCallback<String> callback) |
void |
send(String url)
Sends a JSONP request and does not expect any results.
|
JsonpRequest<Void> |
send(String url,
AsyncCallback<Void> callback)
Sends a JSONP request, does not expect any result, but still allows to be notified when the
request has been executed on the server.
|
void |
setCallbackParam(String callbackParam) |
void |
setFailureCallbackParam(String failureCallbackParam) |
void |
setPredeterminedId(String id) |
void |
setTimeout(int timeout) |
public String getCallbackParam()
public String getFailureCallbackParam()
public int getTimeout()
public JsonpRequest<Boolean> requestBoolean(String url, AsyncCallback<Boolean> callback)
public JsonpRequest<Double> requestDouble(String url, AsyncCallback<Double> callback)
public JsonpRequest<Integer> requestInteger(String url, AsyncCallback<Integer> callback)
public <T extends JavaScriptObject> JsonpRequest<T> requestObject(String url, AsyncCallback<T> callback)
JSONObject
to parse it, or use a JavaScript overlay class.public JsonpRequest<String> requestString(String url, AsyncCallback<String> callback)
public void send(String url)
public JsonpRequest<Void> send(String url, AsyncCallback<Void> callback)
public void setCallbackParam(String callbackParam)
callbackParam
- The name of the callback url parameter to send to the server. The default
value is "callback".public void setFailureCallbackParam(String failureCallbackParam)
failureCallbackParam
- The name of the failure callback url parameter to send to the
server. The default is null.public void setPredeterminedId(String id)
public void setTimeout(int timeout)
timeout
- The expected timeout (ms) for this request. The default is 10s.Copyright © 2018. All rights reserved.