请在问题上看到最后的评论:
以下代码编译但我无法弄清楚为什么会出现运行时错误:
def sslContext = SSLContext.getInstance("SSL")
...
SSLSocketFactory sf = new org.apache.http.conn.ssl.SSLSocketFactory(sslContext, org.apache.http.conn.ssl.SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER)
我有一份导入声明:
import org.apache.http.conn.ssl.SSLSocketFactory
并在网上搜索class definition is here。
我看到其中一个构造函数已弃用,即
SSLSocketFactory(SSLContext sslContext, HostNameResolver nameResolver)
但是有
SSLSocketFactory(SSLContext sslContext, X509HostnameVerifier hostnameVerifier)
所以不应该这样做好吗?请注意,如果我删除第二个CONSTRUCTOR参数,我不会得到这个错误。
我运行grails 2.2.3的错误是:
Class: groovy.lang.GroovyRuntimeException
Message: Could not find matching constructor for: org.apache.http.conn.ssl.SSLSocketFactory(javax.net.ssl.SSLContext, org.apache.http.conn.ssl.AllowAllHostnameVerifier)