简体   繁体   English

使用JSoup和Appengine 1.7时的NPE

[英]NPE when using JSoup and appengine 1.7

I'm trying to use Jsoup (1.7.2) with appengine (1.7.7) and I'm getting an error when trying to connect: 我正在尝试将Jsoup(1.7.2)与appengine(1.7.7)结合使用,尝试连接时遇到错误:

try {
    doc = Jsoup.connect("http://www.google.com").get();
} catch (Exception e) {
e.printStackTrace();
}

I'm getting the following stack trace: 我得到以下堆栈跟踪:

java.lang.NullPointerException
at java.util.Collections.addAll(Collections.java:3836)
at sun.security.ssl.AbstractTrustManagerWrapper.<init>(SSLContextImpl.java:778)
at sun.security.ssl.SSLContextImpl.chooseTrustManager(SSLContextImpl.java:133)
at sun.security.ssl.SSLContextImpl.engineInit(SSLContextImpl.java:89)
at javax.net.ssl.SSLContext.init(SSLContext.java:283)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.createNonvalidatingScheme(LocalURLFetchService.java:254)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.createHttpClient(LocalURLFetchService.java:276)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.getNonValidatingClient(LocalURLFetchService.java:528)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.access$100(LocalURLFetchService.java:83)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService$8.run(LocalURLFetchService.java:439)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService$8.run(LocalURLFetchService.java:424)
at java.security.AccessController.doPrivileged(Native Method)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.doPrivilegedExecute(LocalURLFetchService.java:424)
at com.google.appengine.api.urlfetch.dev.LocalURLFetchService.fetch(LocalURLFetchService.java:392)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.callInternal(ApiProxyLocalImpl.java:521)
at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:475)
at com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:452)
at java.util.concurrent.Executors$PrivilegedCallable$1.run(Executors.java:493)
at java.security.AccessController.doPrivileged(Native Method)
at java.util.concurrent.Executors$PrivilegedCallable.call(Executors.java:490)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)

Ok the problem was JDK 7: 好的,问题是JDK 7:

java version "1.7.0_04-ea"
Java(TM) SE Runtime Environment (build 1.7.0_04-ea-b13)
Java HotSpot(TM) 64-Bit Server VM (build 23.0-b16, mixed mode) 

Switched back to java 6 and it works great 切换回Java 6,效果很好

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM