Support for Spring's RestTemplate within native Android applications

Overview

Spring for Android

Spring for Android is a library that is designed to provide components of the Spring Framework family of projects for use in native Android applications.

Code of Conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

Features

  • A REST client for Android
  • Auth support for accessing secure APIs

Download Artifacts

The new Android Build System provides a Gradle plugin for building Android apps, and Gradle itself supports external dependency resolution via Maven repositories. Additionally, the Android Maven Plugin makes it possible to build Android applications utilizing the power of Maven dependency management. See downloading Spring artifacts for Maven repository information.

Rest Template

The Rest Template library can be included in your project using Gradle or Maven.

Gradle:

dependencies {
    compile("org.springframework.android:spring-android-rest-template:${version}")
}

Maven:

<dependencies>
    <dependency>
        <groupId>org.springframework.android</groupId>
        <artifactId>spring-android-rest-template</artifactId>
        <version>${org.springframework.android-version}</version>
    </dependency>    
</dependencies>

Spring Repositories

The following Maven repositories are available from Spring. You do not need to include all three repositories, rather select the one that corresponds to the release type of the dependency. GA releases are also available through Maven Central.

Gradle:

repositories {
    maven { url "https://repo.spring.io/release" }
    maven { url "https://repo.spring.io/milestone" }
    maven { url "https://repo.spring.io/snapshot" }
}

Maven:

<repositories>
    <repository>
        <id>spring-repo</id>
        <name>Spring Repository</name>
        <url>https://repo.spring.io/release</url>
    </repository>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
    </repository>
    <repository>
        <id>spring-snapshots</id>
        <name>Spring Snapshots</name>
        <url>https://repo.spring.io/snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

Example Build Configuration

The following is an example build.gradle that illustrates how to include the spring-android-rest-template module along with the jackson-databind library for marshaling JSON data. Note the packagingOptions section which filters specific files that can cause APK packaging to fail.

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion '20.0.0'

    defaultConfig {
        applicationId 'org.springframework.demo'
        minSdkVersion 15
        targetSdkVersion 20
        versionCode 1
        versionName '1.0'
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/ASL2.0'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/notice.txt'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:20.+'
    compile 'org.springframework.android:spring-android-rest-template:2.0.0.M1'
    compile 'com.fasterxml.jackson.core:jackson-databind:2.4.1.3'
}

Documentation

See the current Javadoc and reference docs.

Sample Applications

Several example projects are available in the samples repository.

Getting Started Guides

The spring.io web site contains many getting started guides that cover a broad range of topics.

Support

Check out the spring-android tag on Stack Overflow. Commercial support is also available.

Issue Tracking

Report issues via the Spring Android JIRA. While JIRA is preferred, GitHub issues are also welcome. Understand our issue management process by reading about the lifecycle of an issue.

Build from Source

  1. Clone the repository from GitHub:

    $ git clone git://github.com/spring-projects/spring-android.git

    Note: If you are unfamiliar with Git, you may want to try GitHub for Windows or GitHub for Mac.

  2. Navigate into the cloned repository directory:

    $ cd spring-android
  3. The project uses Gradle to build:

    $ ./gradlew build
  4. Install jars into your local Maven cache (optional)

    $ ./gradlew install

Import Source into your IDE

Eclipse

  1. To generate Eclipse metadata (.classpath and .project files):

    $ ./gradlew eclipse
  2. Once complete, you may then import the projects into Eclipse as usual:

    File -> Import -> Existing projects into workspace
    

    Note: Spring Tool Suite includes support for Gradle, and you can simply import as Gradle projects.

IDEA

Generate IDEA metadata (.iml and .ipr files):

$ ./gradlew idea

Tests

There are three Android Test Projects located in the "test" folder of the repository that correspond to the three Spring for Android Modules (Core, Rest Template, and Auth). To run the suite of tests, perform the following steps. The parent POM located in the root of the "test" folder will execute each test project on all attached devices and emulators. The tests will fail if there is no device or emulator attached.

Run the Android tests:

$ ./gradlew testAndroid

Note: To view the output, use the --info parameter when running Gradle

Gradle runs the tests using the Android Maven Plugin. Alternatively the test suite can be executed using the following Maven command:

$ mvn clean install -f ./test/pom.xml

Test results are available in the following directory for each test project:

/test/<test-project>/target/surefire-reports

Contributing

Pull requests are welcome. See the contributor guidelines for details.

Stay in Touch

Follow @SpringCentral as well as @SpringAndroid on Twitter. In-depth articles can be found at The Spring Blog, and releases are announced via our news feed.

License

Spring for Android is released under version 2.0 of the Apache License.

Comments
  • Add a request factory based on okhttpclient

    Add a request factory based on okhttpclient

    Add a request factory based on okhttpclient if okhttpclient is available on the classpath. https://github.com/SpringSource/spring-android/issues/10

    This pull requests add very little code and provides an okhttp based implementation of spring android. This http engine has several advantages :

    • SPDY support allows all requests to the same host to share a socket.
    • Connection pooling reduces request latency (if SPDY isn’t available).
    • Transparent GZIP shrinks download sizes.
    • Response caching avoids the network completely for repeat requests.

    The pull requests is simple and is tested (thx to your tests).

    I also updated the android maven plugin version to get things working with latest android SDK.

    opened by stephanenicolas 15
  • The newest SpringAndroid version is ? OkHttp support is not the newest !

    The newest SpringAndroid version is ? OkHttp support is not the newest !

    Hi, Recently i want to use SpringAndroid with OkHttp,but okHttp is updated at 'com.squareup.okhttp3:okhttp:3.0.0-RC1' , there is a big change in okHttp. but SpringAndroid 2.0.0M3 is still okHttp2.x version , can someone update the library ?

    opened by mrljdx 14
  • OkHttpClientHttpRequestFactory prevents usings OkHttp interceptors

    OkHttpClientHttpRequestFactory prevents usings OkHttp interceptors

    OkHttpClientHttpRequestFactory uses OkUrlFactory.

    With OkHttp 2.2.0 comes a new great feature: Interceptors. Interceptors won't work when using OkUrlFactory, as explained here: https://github.com/square/okhttp/wiki/Interceptors

    Can you provide a different implementation of OkHttpClientHttpRequestFactory that don't use OkUrlFactory so we can use interceptors?

    (FYI http://facebook.github.io/stetho/ needs OkHttp interceptors)

    opened by clemp6r 14
  • Added support for Authorization and User-Agent HTTP headers

    Added support for Authorization and User-Agent HTTP headers

    I am using spring-android for an Android application. It works great except it was missing two things I needed:

    • A way to customize the User-Agent HTTP header
    • Support for HTTP Basic Authentication

    I've added those two features and confirmed that it works on my Android application. Would you consider merging these commits into the main repository?

    opened by sweemer 9
  • HttpComponentsClientHttpRequestFactory OutOfMemory during Post large files

    HttpComponentsClientHttpRequestFactory OutOfMemory during Post large files

    If I try to upload a file via Post, I get an OutOfMemoryError. I just saw, that this problem was solved at the "normal" Spring Framework, but sadly not for Android. I need to use the HttpComponentsClientHttpRequestFactory.

    SimpleClientHttpRequestFactory has setBufferRequestBody, which makes it possible to stream the content and not loadling everything into memory.

    FileSize ist around 18MB.

    Does anybody know a workaround?

        java.lang.OutOfMemoryError
                at java.io.ByteArrayOutputStream.expand(ByteArrayOutputStream.java:91)
                at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:201)
                at org.springframework.util.FileCopyUtils.copy(FileCopyUtils.java:113)
                at org.springframework.http.converter.ResourceHttpMessageConverter.writeInternal(ResourceHttpMessageConverter.java:73)
                at org.springframework.http.converter.ResourceHttpMessageConverter.writeInternal(ResourceHttpMessageConverter.java:39)
                at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:173)
                at org.springframework.http.converter.FormHttpMessageConverter.writePart(FormHttpMessageConverter.java:310)
                at org.springframework.http.converter.FormHttpMessageConverter.writeParts(FormHttpMessageConverter.java:276)
                at org.springframework.http.converter.FormHttpMessageConverter.writeMultipart(FormHttpMessageConverter.java:266)
                at org.springframework.http.converter.FormHttpMessageConverter.write(FormHttpMessageConverter.java:209)
                at org.springframework.http.converter.FormHttpMessageConverter.write(FormHttpMessageConverter.java:91)
                at org.springframework.web.client.RestTemplate$HttpEntityRequestCallback.doWithRequest(RestTemplate.java:624)
                at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:474)
                at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:447)
                at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:422)
    

    I use HttpComponentsClientHttpRequestFactory Function has url as String, file as File and filename and contentType as String params

                    MultiValueMap<String, Object> multiValueMap = new LinkedMultiValueMap<String, Object>();
                    FileSystemResource fileSystemResource = new FileSystemResource(file.getAbsoluteFile()) {
    
                        @Override
                        public String getFilename() {
                            String filename = fFilename;
    
                            if (fContentType.toLowerCase().equals("image/jpeg")) {
                                if (!filename.toLowerCase().endsWith(".jpeg")) {
                                    filename += ".jpeg";
                                }
                            }
    
                            return filename;
                        }
                    };
    
    
                    MediaType mediaType = MediaType.valueOf(contentType);
                    HttpHeaders headers = new HttpHeaders();
                    headers.setContentType(mediaType);
                    HttpEntity httpEntity = new HttpEntity(fileSystemResource, headers);
    
                    multiValueMap.add("file", httpEntity);
    
                    additionalHeaders.put("Accept", "");
    
                    jsonAttachmentCreated = restClient.postAttachment(url, multiValueMap);
    
    opened by MasterEmit 7
  • Proguard rules

    Proguard rules

    Hi there.

    I have an app that uses spring-android: compile 'org.springframework.android:spring-android-rest-template:1.0.1.RELEASE'

    When I have ProGuard turned on during compilation, I receive a lot of warnings that makes the compilation fail. If I use -dontwarn to suppress all of them, the app builds. However, it than crashes when trying to use the library.

    Below are the warnings i get:

    Warning:com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.URI Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.URIException Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.methods.EntityEnclosingMethod Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.methods.ByteArrayRequestEntity Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.methods.EntityEnclosingMethod Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.URIException Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.URI Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.URIException Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.methods.EntityEnclosingMethod Warning:org.springframework.http.client.CommonsClientHttpRequest: can't find referenced class org.apache.commons.httpclient.methods.RequestEntity Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.MultiThreadedHttpConnectionManager Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpConnectionManager Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.params.HttpConnectionManagerParams Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.GetMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.DeleteMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.HeadMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.OptionsMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.PostMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.PutMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.methods.TraceMethod Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.MultiThreadedHttpConnectionManager Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpConnectionManager Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.params.HttpConnectionManagerParams Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpClient Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpMethodBase Warning:org.springframework.http.client.CommonsClientHttpRequestFactory: can't find referenced class org.apache.commons.httpclient.HttpConnectionManager Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.HttpMethod Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.Header Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.HttpMethod Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.Header Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.HttpMethod Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.Header Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.HttpMethod Warning:org.springframework.http.client.CommonsClientHttpResponse: can't find referenced class org.apache.commons.httpclient.Header Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedInput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedOutput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedInput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedOutput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedInput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.WireFeedOutput Warning:org.springframework.http.converter.feed.AbstractWireFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.WireFeed Warning:org.springframework.http.converter.feed.AtomFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.atom.Feed Warning:org.springframework.http.converter.feed.RssChannelHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.rss.Channel Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedInput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedOutput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedInput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedOutput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedInput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.FeedException Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.io.SyndFeedOutput Warning:org.springframework.http.converter.feed.SyndFeedHttpMessageConverter: can't find referenced class com.google.code.rome.android.repackaged.com.sun.syndication.feed.synd.SyndFeed Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.Gson Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.GsonBuilder Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.Gson Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonSyntaxException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonIOException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonParseException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.Gson Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonSyntaxException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonIOException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonParseException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.Gson Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonSyntaxException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonIOException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonParseException Warning:org.springframework.http.converter.json.GsonHttpMessageConverter: can't find referenced class com.google.gson.JsonIOException Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.map.ObjectMapper Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonFactory Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonGenerator Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.map.ObjectMapper Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.map.type.TypeFactory Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.type.JavaType Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonGenerator Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonFactory Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonGenerator Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.map.type.TypeFactory Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.map.ObjectMapper Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.type.JavaType Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonGenerator Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.type.JavaType Warning:org.springframework.http.converter.json.MappingJacksonHttpMessageConverter: can't find referenced class org.codehaus.jackson.JsonEncoding Warning:org.springframework.http.converter.xml.SimpleXmlHttpMessageConverter: can't find referenced class org.simpleframework.xml.core.Persister Warning:org.springframework.http.converter.xml.SimpleXmlHttpMessageConverter: can't find referenced class org.simpleframework.xml.Root Warning:org.springframework.http.converter.xml.SimpleXmlHttpMessageConverter: can't find referenced class org.simpleframework.xml.Serializer

    opened by michel-t-86 5
  • Twitter OAuth - fetchRequestToken results http 406 (not acceptable)

    Twitter OAuth - fetchRequestToken results http 406 (not acceptable)

    TwitterConnectionFactory.getOAuthOperations().fetchRequestToken("callback", null) throws HttpClientErrorException.

    Caused by: org.springframework.web.client.HttpClientErrorException: 406 Not Acceptable at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:75) at org.springframework.web.client.RestTemplate.handleResponseError(RestTemplate.java:510) at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:467) at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:439) at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:415) at org.springframework.social.oauth1.OAuth1Template.exchangeForToken(OAuth1Template.java:194) at org.springframework.social.oauth1.OAuth1Template.fetchRequestToken(OAuth1Template.java:116)

    opened by gyulavoros 4
  • Bump jackson-databind from 2.7.2 to 2.9.10.7 in /test/spring-android-rest-template-test

    Bump jackson-databind from 2.7.2 to 2.9.10.7 in /test/spring-android-rest-template-test

    Bumps jackson-databind from 2.7.2 to 2.9.10.7.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 3
  • Use HttpURLConnection to perform requests

    Use HttpURLConnection to perform requests

    It's possible to refactor code to use a different client to perform request? Using this class, is possible to use HttpResponseCache to cache application requests! http://developer.android.com/reference/android/net/http/HttpResponseCache.html

    It would be a nice functionality :D

    opened by condesales 3
  • IllegalArgumentException with empty requesty body using OkHttpRequestFactory

    IllegalArgumentException with empty requesty body using OkHttpRequestFactory

    When sending a request with empty body, an IllegalArgumentException is thrown if one uses the new OkHttpRequestFactory. The stacktrace is the following:

    java.lang.IllegalArgumentException: method POST must have a request body.
        at com.squareup.okhttp.Request$Builder.method(Request.java:244)
        at org.springframework.http.client.OkHttpClientHttpRequest.executeInternal(OkHttpClientHttpRequest.java:85)
        at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48)
        at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:84)
        at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:91)
        at my.super.secret.package.AuthorizationInterceptor.intercept(AuthorizationInterceptor.java:29)
        at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:81)
        at org.springframework.http.client.InterceptingClientHttpRequest.executeInternal(InterceptingClientHttpRequest.java:67)
        at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48)
        at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:84)
        at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:536)
        at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:499)
        at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:447)
    

    This is a regression introduced by the new implementation of OkHttpRequestFactory added by the M3 release.

    opened by WonderCsabo 2
  • RestTemplate contructor backward compatibility

    RestTemplate contructor backward compatibility

    The new constructor in 2.0.0 registers default converters. It is incompatible with previous versions. Many project using spring 1.0.1 (like AndroidAnnotations) rely on empty converter list. I suppose change the default behavior back to do not register anything with default constructor, and register constructors with "true" in parameter list.

    opened by westito 2
  • Bump jackson-databind from 2.7.2 to 2.9.10.8 in /test/spring-android-rest-template-test

    Bump jackson-databind from 2.7.2 to 2.9.10.8 in /test/spring-android-rest-template-test

    Bumps jackson-databind from 2.7.2 to 2.9.10.8.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • MappingJacksonValue is missing

    MappingJacksonValue is missing

    This class is available in SpringWebMVC alongside with rest template but it's missing in android-rest-template.

    I had many utility classes in my desktop app but since they had dependency to MappingJacksonValue class, and this class is missing in 'android-rest-template', none of them are now working in my android app.

    opened by m3hdiii 0
  • URL Cleanup

    URL Cleanup

    This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

    HTTP URLs that Could Not Be Fixed

    These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

    • [ ] http://erik.eae.net/archives/2007/07/27/18.54.15/ (200) with 1 occurrences could not be migrated:
      (https result SSLHandshakeException).
    • [ ] http://javascript.nwbox.com/IEContentLoaded/ (200) with 1 occurrences could not be migrated:
      (https result SSLHandshakeException).
    • [ ] http://blindsignals.com/index.php/2009/07/jquery-delay/ (301) with 1 occurrences could not be migrated:
      (https result SSLHandshakeException).

    Fixed URLs

    Fixed But Review Recommended

    These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

    • [ ] http://fontawesome.io (301) with 4 occurrences migrated to:
      https://fontawesome.com?from=io (https result AnnotatedConnectException).
    • [ ] http://jsperf.com/getall-vs-sizzle/2 (301) with 1 occurrences migrated to:
      https://jsperf.com/getall-vs-sizzle/2 (https result ReadTimeoutException).
    • [ ] http://wiki.ecmascript.org/doku.php?id=harmony:egal (ConnectTimeoutException) with 1 occurrences migrated to:
      https://wiki.ecmascript.org/doku.php?id=harmony:egal (https result ConnectTimeoutException).
    • [ ] http://www.w3.org/TR/html4/loose.dtd (ReadTimeoutException) with 1 occurrences migrated to:
      https://www.w3.org/TR/html4/loose.dtd (https result ReadTimeoutException).
    • [ ] http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ (301) with 1 occurrences migrated to:
      https://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ (https result 404).
    • [ ] http://github.com/sprinframework (301) with 4 occurrences migrated to:
      https://github.com/sprinframework (https result 404).
    • [ ] http://github.com/spring_hadoop (301) with 4 occurrences migrated to:
      https://github.com/spring_hadoop (https result 404).
    • [ ] http://json.org/json2.js (404) with 1 occurrences migrated to:
      https://json.org/json2.js (https result 404).
    • [ ] http://pivotal.github.com/jasmine (404) with 1 occurrences migrated to:
      https://pivotal.github.com/jasmine (https result 404).

    Fixed Success

    These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

    • [ ] http://backbonejs.org with 1 occurrences migrated to:
      https://backbonejs.org (https result 200).
    • [ ] http://bugs.jquery.com/ticket/12282 with 1 occurrences migrated to:
      https://bugs.jquery.com/ticket/12282 (https result 200).
    • [ ] http://bugs.jquery.com/ticket/12359 with 1 occurrences migrated to:
      https://bugs.jquery.com/ticket/12359 (https result 200).
    • [ ] http://bugs.jquery.com/ticket/13378 with 1 occurrences migrated to:
      https://bugs.jquery.com/ticket/13378 (https result 200).
    • [ ] http://creativecommons.org/licenses/by/3.0/ with 2 occurrences migrated to:
      https://creativecommons.org/licenses/by/3.0/ (https result 200).
    • [ ] http://diveintohtml5.info/history.html with 1 occurrences migrated to:
      https://diveintohtml5.info/history.html (https result 200).
    • [ ] http://docs.spring.io/spring-data/jpa/docs/1.3.4.RELEASE/api/ with 1 occurrences migrated to:
      https://docs.spring.io/spring-data/jpa/docs/1.3.4.RELEASE/api/ (https result 200).
    • [ ] http://docs.spring.io/spring-data/jpa/docs/1.3.4.RELEASE/reference/html/ with 1 occurrences migrated to:
      https://docs.spring.io/spring-data/jpa/docs/1.3.4.RELEASE/reference/html/ (https result 200).
    • [ ] http://docs.spring.io/spring-data/jpa/docs/1.4.0.RC1/api/ with 1 occurrences migrated to:
      https://docs.spring.io/spring-data/jpa/docs/1.4.0.RC1/api/ (https result 200).
    • [ ] http://docs.spring.io/spring-data/jpa/docs/1.4.0.RC1/reference/html/ with 1 occurrences migrated to:
      https://docs.spring.io/spring-data/jpa/docs/1.4.0.RC1/reference/html/ (https result 200).
    • [ ] http://fonts.googleapis.com/css?family=Varela+Round|Montserrat:400,700 with 1 occurrences migrated to:
      https://fonts.googleapis.com/css?family=Varela+Round|Montserrat:400,700 (https result 200).
    • [ ] http://github.com/spring-projects/gh-pages with 1 occurrences migrated to:
      https://github.com/spring-projects/gh-pages (https result 200).
    • [ ] http://github.com/spring-projects/spring-android with 1 occurrences migrated to:
      https://github.com/spring-projects/spring-android (https result 200).
    • [ ] http://imgs.mi9.com/uploads/landscape/2101/beautiful-leaf-wallpapers_1280x960_28083.jpg with 1 occurrences migrated to:
      https://imgs.mi9.com/uploads/landscape/2101/beautiful-leaf-wallpapers_1280x960_28083.jpg (https result 200).
    • [ ] http://jekyllrb.com with 1 occurrences migrated to:
      https://jekyllrb.com (https result 200).
    • [ ] http://jquery.com/ with 1 occurrences migrated to:
      https://jquery.com/ (https result 200).
    • [ ] http://opensource.org/licenses/mit-license.html with 2 occurrences migrated to:
      https://opensource.org/licenses/mit-license.html (https result 200).
    • [ ] http://pages.github.com/ with 1 occurrences migrated to:
      https://pages.github.com/ (https result 200).
    • [ ] http://projects.spring.io with 1 occurrences migrated to:
      https://projects.spring.io (https result 200).
    • [ ] http://rubygems.org with 1 occurrences migrated to:
      https://rubygems.org (https result 200).
    • [ ] http://rubygems.org/ with 1 occurrences migrated to:
      https://rubygems.org/ (https result 200).
    • [ ] http://silviomoreto.github.io/bootstrap-select/ with 2 occurrences migrated to:
      https://silviomoreto.github.io/bootstrap-select/ (https result 200).
    • [ ] http://sizzlejs.com/ with 2 occurrences migrated to:
      https://sizzlejs.com/ (https result 200).
    • [ ] http://spring.io with 1 occurrences migrated to:
      https://spring.io (https result 200).
    • [ ] http://spring.io/guides/gs/gradle/ with 1 occurrences migrated to:
      https://spring.io/guides/gs/gradle/ (https result 200).
    • [ ] http://spring.io/guides/gs/maven/ with 1 occurrences migrated to:
      https://spring.io/guides/gs/maven/ (https result 200).
    • [ ] http://spring.io/questions with 1 occurrences migrated to:
      https://spring.io/questions (https result 200).
    • [ ] http://stackoverflow.com/questions/tagged/spring-android with 1 occurrences migrated to:
      https://stackoverflow.com/questions/tagged/spring-android (https result 200).
    • [ ] http://stackoverflow.com/questions/tagged/spring-data-jpa with 1 occurrences migrated to:
      https://stackoverflow.com/questions/tagged/spring-data-jpa (https result 200).
    • [ ] http://twitter.com/byscuits with 2 occurrences migrated to:
      https://twitter.com/byscuits (https result 200).
    • [ ] http://twitter.com/fontawesome with 2 occurrences migrated to:
      https://twitter.com/fontawesome (https result 200).
    • [ ] http://underscorejs.org with 1 occurrences migrated to:
      https://underscorejs.org (https result 200).
    • [ ] http://kyruus.com (301) with 2 occurrences migrated to:
      https://www.kyruus.com/ (https result 200).
    • [ ] http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html with 1 occurrences migrated to:
      https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html (https result 200).
    • [ ] http://www.w3.org/TR/2011/REC-css3-selectors-20110929/ with 2 occurrences migrated to:
      https://www.w3.org/TR/2011/REC-css3-selectors-20110929/ (https result 200).
    • [ ] http://www.w3.org/TR/CSS21/syndata.html with 2 occurrences migrated to:
      https://www.w3.org/TR/CSS21/syndata.html (https result 200).
    • [ ] http://www.w3.org/TR/selectors/ with 4 occurrences migrated to:
      https://www.w3.org/TR/selectors/ (https result 200).
    • [ ] http://dev.w3.org/csswg/cssom/ with 1 occurrences migrated to:
      https://dev.w3.org/csswg/cssom/ (https result 301).
    • [ ] http://docs.python.org/library/functions.html with 1 occurrences migrated to:
      https://docs.python.org/library/functions.html (https result 301).
    • [ ] http://forum.spring.io/forum/spring-projects/data with 1 occurrences migrated to:
      https://forum.spring.io/forum/spring-projects/data (https result 301).
    • [ ] http://github.com/SpringSource/spring-data-jpa with 1 occurrences migrated to:
      https://github.com/SpringSource/spring-data-jpa (https result 301).
    • [ ] http://github.com/pivotal/jasmine-ajax with 1 occurrences migrated to:
      https://github.com/pivotal/jasmine-ajax (https result 301).
    • [ ] http://helpful.knobs-dials.com/index.php/Component_returned_failure_code:0x80040111 with 1 occurrences migrated to:
      https://helpful.knobs-dials.com/index.php/Component_returned_failure_code:0x80040111 (https result 301).
    • [ ] http://jira.springsource.org/browse/ANDROID with 1 occurrences migrated to:
      https://jira.springsource.org/browse/ANDROID (https result 301).
    • [ ] http://jira.springsource.org/browse/DATAJPA with 1 occurrences migrated to:
      https://jira.springsource.org/browse/DATAJPA (https result 301).
    • [ ] http://jonrohan.github.com/ZeroClipboard/ with 1 occurrences migrated to:
      https://jonrohan.github.com/ZeroClipboard/ (https result 301).
    • [ ] http://jquery.org/license with 2 occurrences migrated to:
      https://jquery.org/license (https result 301).
    • [ ] http://projects.spring.io/spring-data-jpa with 1 occurrences migrated to:
      https://projects.spring.io/spring-data-jpa (https result 301).
    • [ ] http://spring-projects.github.io/ with 1 occurrences migrated to:
      https://spring-projects.github.io/ (https result 301).
    • [ ] http://twitter.github.com/bootstrap/javascript.html with 13 occurrences migrated to:
      https://twitter.github.com/bootstrap/javascript.html (https result 301).
    • [ ] http://www.macromedia.com/go/getflashplayer with 1 occurrences migrated to:
      https://www.macromedia.com/go/getflashplayer (https result 301).
    • [ ] http://www.modernizr.com/ with 1 occurrences migrated to:
      https://www.modernizr.com/ (https result 301).
    • [ ] http://www.pivotal.io with 1 occurrences migrated to:
      https://www.pivotal.io (https result 301).
    • [ ] http://www.pivotal.io/privacy-policy with 1 occurrences migrated to:
      https://www.pivotal.io/privacy-policy (https result 301).
    • [ ] http://www.pivotal.io/terms-of-use with 1 occurrences migrated to:
      https://www.pivotal.io/terms-of-use (https result 301).
    • [ ] http://www.spring.io with 8 occurrences migrated to:
      https://www.spring.io (https result 301).
    • [ ] http://www.w3.org/TR/css3-selectors/ with 2 occurrences migrated to:
      https://www.w3.org/TR/css3-selectors/ (https result 301).
    • [ ] http://www.w3.org/TR/css3-syntax/ with 1 occurrences migrated to:
      https://www.w3.org/TR/css3-syntax/ (https result 301).
    • [ ] http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx with 2 occurrences migrated to:
      https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx (https result 302).
    • [ ] http://play.gopivotal.com/OSS_Website_Spring_SpringNewsletterSubscriptionEmailOnly.html with 1 occurrences migrated to:
      https://play.gopivotal.com/OSS_Website_Spring_SpringNewsletterSubscriptionEmailOnly.html (https result 302).
    • [ ] http://repo.spring.io/milestone with 4 occurrences migrated to:
      https://repo.spring.io/milestone (https result 302).
    • [ ] http://scripts.sil.org/OFL with 2 occurrences migrated to:
      https://scripts.sil.org/OFL (https result 302).
    • [ ] http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context with 1 occurrences migrated to:
      https://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context (https result 302).

    Ignored

    These URLs were intentionally ignored.

    • http://localhost:4000/spring-xyz/ with 1 occurrences
    • http://www with 1 occurrences
    opened by spring-operator 0
  • URL Cleanup

    URL Cleanup

    This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

    Fixed URLs

    Fixed Success

    These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

    • [ ] http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd with 1 occurrences migrated to:
      https://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd (https result 200).

    Ignored

    These URLs were intentionally ignored.

    • http://www.w3.org/2000/svg with 1 occurrences
    opened by spring-operator 0
  • URL Cleanup

    URL Cleanup

    This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

    Fixed URLs

    Fixed Success

    These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

    • [ ] http://www.apache.org/licenses/ with 2 occurrences migrated to:
      https://www.apache.org/licenses/ (https result 200).
    • [ ] http://www.apache.org/licenses/LICENSE-2.0 with 308 occurrences migrated to:
      https://www.apache.org/licenses/LICENSE-2.0 (https result 200).
    opened by spring-operator 0
TCP-capable MQTT client for react native

Quito A TCP-capable MQTT client for React Native. The module provides a Typescript API for native MQTT clients on iOS and Android. on Android, quito r

Kevin 5 Dec 3, 2022
Easily upload files (Multipart/Binary/FTP out of the box) in the background with progress notification. Support for persistent upload requests, customizations and custom plugins.

ℹ️ ?? Get started with 4.x ?? Try it out Get the demo APK Still using 3.x ? It's not maintained or supported. You may have security issues and problem

Alex Gotev 2.7k Jan 3, 2023
:satellite: [Android Library] Simplified async networking in android

Android library that simplifies networking in android via an async http client. Also featured in [Awesome Android Newsletter #Issue 15 ] Built with ❤︎

Nishant Srivastava 36 May 14, 2022
Android network client based on Cronet. This library let you easily use QUIC protocol in your Android projects

Android network client based on Cronet. This library let you easily use QUIC protocol in your Android projects

VK.com 104 Dec 12, 2022
Android Easy Http - Simplest android http request library.

Android Easy Http Library 繁體中文文檔 About Android Easy Http Library Made on OkHttp. Easy to do http request, just make request and listen for the respons

null 13 Sep 30, 2022
Android Asynchronous Networking and Image Loading

Android Asynchronous Networking and Image Loading Download Maven Git Features Kotlin coroutine/suspend support Asynchronously download: Images into Im

Koushik Dutta 6.3k Dec 27, 2022
Square’s meticulous HTTP client for the JVM, Android, and GraalVM.

OkHttp See the project website for documentation and APIs. HTTP is the way modern applications network. It’s how we exchange data & media. Doing HTTP

Square 43.4k Jan 5, 2023
A type-safe HTTP client for Android and the JVM

Retrofit A type-safe HTTP client for Android and Java. For more information please see the website. Download Download the latest JAR or grab from Mave

Square 41k Jan 5, 2023
Android client for ProjectRTC - a WebRTC demo

AndroidRTC WebRTC Live Streaming An Android client for ProjectRTC. It is designed to demonstrate WebRTC video calls between androids and/or desktop br

Chabardes 1.5k Jan 6, 2023
IceNet - Fast, Simple and Easy Networking for Android

IceNet FAST, SIMPLE, EASY This library is an Android networking wrapper consisting of a combination of Volley, OkHttp and Gson. For more information s

Anton Nurdin Tuhadiansyah 61 Jun 24, 2022
Easy, asynchronous, annotation-based SOAP for Android

IceSoap IceSoap provides quick, easy, asynchronous access to SOAP web services from Android devices. It allows for SOAP responses to be bound to Java

Alex Gilleran 75 Nov 29, 2022
Run Node.js on Android by rewrite Node.js in Java

node-android Run Node.js on Android by rewrite Node.js in Java with the compatible API. third-party: libuvpp, libuv-java JNI code by Oracle. Build Clo

AppNet.Link 614 Nov 15, 2022
dns library for android

Qiniu Happy DNS for Android 安装 直接安装 通过maven 使用方法 DnsManager 可以创建一次,一直使用。 IResolver[] resolvers = new IResolver[3]; resolvers[0] = AndroidDnsSe

Qiniu Cloud 270 Dec 5, 2022
HTTP Server for Android Instrumentation tests

RESTMock REST API mocking made easy. RESTMock is a library working on top of Square's okhttp/MockWebServer. It allows you to specify Hamcrest matchers

Andrzej Chmielewski 750 Dec 29, 2022
🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀

Fast Android Networking Library About Fast Android Networking Library Fast Android Networking Library is a powerful library for doing any type of netw

AMIT SHEKHAR 5.5k Dec 27, 2022
The easiest HTTP networking library for Kotlin/Android

Fuel The easiest HTTP networking library for Kotlin/Android. You are looking at the documentation for 2.x.y.. If you are looking for the documentation

Kittinun Vantasin 4.3k Jan 8, 2023
Asynchronous socket, http(s) (client+server) and websocket library for android. Based on nio, not threads.

AndroidAsync AndroidAsync is a low level network protocol library. If you are looking for an easy to use, higher level, Android aware, http request li

Koushik Dutta 7.3k Jan 2, 2023
LiteHttp is a simple, intelligent and flexible HTTP framework for Android. With LiteHttp you can make HTTP request with only one line of code! It could convert a java model to the parameter and rander the response JSON as a java model intelligently.

Android network framework: LiteHttp Tags : litehttp2.x-tutorials Website : http://litesuits.com QQgroup : 42960650 , 47357508 Android网络通信为啥子选 lite-htt

马天宇 829 Dec 29, 2022