Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-users] NPE when trying to use Jetty async HTTP client

Hello again,

I have change my code to the following, but for some reason it returns

java.net.NoRouteToHostException: No route to host

for any URL I try as FCM_URL value below:

private static final HttpClient sHttpClient = new HttpClient();
private static final BufferingResponseListener sFcmListener = new BufferingResponseListener() {
    @Override
    public void onComplete(Result result) {
        if (!result.isSucceeded()) {
            System.err.println(result.getFailure()); // No route to host
            return;
        }

        String body = getContentAsString(StandardCharsets.UTF_8);
        System.out.printf("onContent: %s\n", body);
        Map<String, Object> resp = (Map<String, Object>) JSON.parse(body);

        try {
            Object[] results = (Object[]) resp.get(FCM_RESULTS);
            Map map = (Map) results[0];
            String error = (String) map.get(FCM_ERROR);
            if (FCM_NOT_REGISTERED.equals(error)) {
                // TODO delete invalid FCM token from the database
            }
        } catch (Exception ex) {
            System.err.println(ex);
        }
    }
};

public static void main(String[] args) throws Exception {
    sHttpClient.start();
    sHttpClient.POST(FCM_URL)
        .header(HttpHeader.AUTHORIZATION, FCM_KEY)
        .header(HttpHeader.CONTENT_TYPE, "application/json")
        .content(new StringContentProvider(JSON.toString(REQUEST)))
        .send(sFcmListener);
}

Any suggestions please?

Back to the top