7

I want to hit an xml request to a url while running the code in my local system it is working well i have created a war file and deployed the same in server,but while running in server getting an exception 'javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated' i have used groovy http builder

def http = new HTTPBuilder(url)
          http.auth.basic('username', 'password')
        try {               
            http.request(Method.POST, ContentType.TEXT) {
                        req->
                            headers.accept = "application/xml"
                            body = request //xml request
                            response.success = {
                                        resp,reader ->
                                            Response =  reader.text
                            }
            }
        }
        catch(HttpResponseException ex) {
             println ex;
        }

how can i solve this problem in this case..?

Antony Prince
  • 319
  • 4
  • 17
  • Try [this blog](http://blog.nerdability.com/2013/01/tech-how-to-fix-sslpeerunverifiedexcept.html) and following links having similar exception. [Groovy http builder](http://groovy.codehaus.org/modules/http-builder/doc/ssl.html) [**SO1**](http://stackoverflow.com/questions/2642777/trusting-all-certificates-using-httpclient-over-https), [**SO2**](http://stackoverflow.com/questions/15837015/apache-http-client-javax-net-ssl-sslpeerunverifiedexception-peer-not-authentica), [**SO3**](http://stackoverflow.com/questions/9474313/java-javax-net-ssl-sslpeerunverifiedexception-peer-not-authenticated). – Swapnil Sawant May 16 '14 at 13:05

2 Answers2

6

Workaround: The following answer provides a workaround for this issue: https://stackoverflow.com/a/25076888/782034

Just found out that new version (0.7.1) of HttpBuilder introduces method:

ignoreSSLIssues()

This solves all problems regarding invalid SSL certificates (of course you have to be aware that it also decrease security).

More information about this method: http://groovy.codehaus.org/modules/http-builder/doc/ssl.html (section at the bottom)

i.e.

def http = new HTTPBuilder(url)
http.ignoreSSLIssues()

Solution: If you want to do things the 'proper' way, checkout the other solutions regarding importing the server's certificates. e.g. SSLPeerUnverifiedException: peer not authenticated

Community
  • 1
  • 1
Nick Grealy
  • 24,216
  • 9
  • 104
  • 119
3

If you use ignoreSSLIssues() but still get same exception.

Just add latest httpclient into Gradle/Maven

compile 'org.apache.httpcomponents:httpclient:4.5.3'

Can't use ignoreSSLIssues in HttpBuilder version 0.7.1

Community
  • 1
  • 1
Long Nguyen
  • 9,898
  • 5
  • 53
  • 52