Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
运行Junit测试用例android时SSL套接字工厂出错_Android_Spring_Rest_Ssl_Junit - Fatal编程技术网

运行Junit测试用例android时SSL套接字工厂出错

运行Junit测试用例android时SSL套接字工厂出错,android,spring,rest,ssl,junit,Android,Spring,Rest,Ssl,Junit,我试着运行这个简单的JUnit测试用例,来测试Spring REST for android的功能,基本示例是从Spring网页复制并通过: public class ExampleUnitTest { @Test public void addition_isCorrect() throws Exception { // The connection URL String url = "https://ajax.googleapis.com/ajax/ser

我试着运行这个简单的JUnit测试用例,来测试Spring REST for android的功能,基本示例是从Spring网页复制并通过:

public class ExampleUnitTest {

    @Test
    public void addition_isCorrect() throws Exception {

    // The connection URL
    String url = "https://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={query}";

    // Create a new RestTemplate instance
    RestTemplate restTemplate = new RestTemplate();

    // Add the String message converter
    restTemplate.getMessageConverters().add(new StringHttpMessageConverter());

    // Make the HTTP GET request, marshaling the response to a String
    String result = restTemplate.getForObject(url, String.class, "Android");
   }
}
但在运行时,我收到以下异常:

java.lang.IllegalArgumentException: SSL socket factory may not be null
at org.apache.http.util.Args.notNull(Args.java:54)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.<init>(SSLConnectionSocketFactory.java:223)
at org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:714)
at org.apache.http.impl.client.HttpClients.createSystem(HttpClients.java:66)
at org.springframework.http.client.HttpComponentsClientHttpRequestFactory.<init>(HttpComponentsClientHttpRequestFactory.java:74)
at org.springframework.http.client.support.HttpAccessor.<init>(HttpAccessor.java:62)
at org.springframework.http.client.support.InterceptingHttpAccessor.<init>(InterceptingHttpAccessor.java:36)
at org.springframework.web.client.RestTemplate.<init>(RestTemplate.java:156)
at eu.vinmasterpiece.carburantimise.ExampleUnitTest.addition_isCorrect(ExampleUnitTest.java:35)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
apply plugin: 'com.android.library'

android {
compileSdkVersion 23
buildToolsVersion "23.0.1"

defaultConfig {
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
    debug {
        debuggable true
    }
}
lintOptions {
    abortOnError false
}
packagingOptions {
    exclude 'META-INF/DEPENDENCIES.txt'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/dependencies.txt'
    exclude 'META-INF/LGPL2.1'
}
testOptions {
    unitTests.returnDefaultValues = true
}
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'org.springframework.android:spring-android-rest-template:2.0.0.M3'
compile 'com.fasterxml.jackson.core:jackson-databind:2.7.0'
testCompile 'org.springframework.android:spring-android-rest-template:2.0.0.M3'
testCompile 'com.fasterxml.jackson.core:jackson-databind:2.7.0'
testCompile 'org.apache.httpcomponents:httpclient:4.5.1'
testCompile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5.1'

}