You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@continuum.apache.org by Vlado Peshov <vl...@gmail.com> on 2010/04/12 13:29:15 UTC
Possible solution for Exception while downloading pom from https url
Possible solution for exception while downloading pom from https webdav
based repository is to modify the following lines:
InetSocketAddress remoteAddress = new InetSocketAddress( host, port );
SSLSocket sslsock = (SSLSocket) ( ( sock != null ) ? sock : createSocket()
);
to:
InetSocketAddress remoteAddress = new InetSocketAddress( host, port );
SSLSocket sslsock = (SSLSocket) ( ( sock != null ) ? sock : createSocket()
);
sslsock.setEnabledProtocols(new String[] {"SSLv3"});
in the class:
EasySSLSocketFactory.java
The exception is because the http client cannot handle certificates for
SSLv3 protocol, so this support must be explicitly enabled. Here is the
exception:
Could not download the URL: https://xxxxxx:*****@
hostname.com/project/pom.xml
javax.net.ssl.SSLException: Connection has been shutdown:
javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
at com.sun.net.ssl.internal.ssl.
SSLSocketImpl.checkEOF(SSLSocketImpl.java:1267)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1279)
at
com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:43)
at
org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:87)
at
org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:94)
at
org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:171)
at
org.apache.http.impl.SocketHttpClientConnection.close(SocketHttpClientConnection.java:192)
at
org.apache.http.impl.conn.DefaultClientConnection.close(DefaultClientConnection.java:161)
at
org.apache.http.impl.conn.AbstractPooledConnAdapter.close(AbstractPooledConnAdapter.java:158)
at
org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
at
org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:410)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at
org.apache.maven.continuum.project.builder.AbstractContinuumProjectBuilder.createMetadataFile(AbstractContinuumProjectBuilder.java:122)
at
org.apache.maven.continuum.project.builder.AbstractContinuumProjectBuilder.createMetadataFile(AbstractContinuumProjectBuilder.java:244)
at
org.apache.maven.continuum.project.builder.maven.MavenTwoContinuumProjectBuilder.readModules(MavenTwoContinuumProjectBuilder.java:149)
at
org.apache.maven.continuum.project.builder.maven.MavenTwoContinuumProjectBuilder.buildProjectsFromMetadata(MavenTwoContinuumProjectBuilder.java:124)
at
org.apache.maven.continuum.core.action.CreateProjectsFromMetadataAction.execute(CreateProjectsFromMetadataAction.java:152)
at
org.apache.maven.continuum.DefaultContinuum.executeAction(DefaultContinuum.java:2759)
at
org.apache.maven.continuum.DefaultContinuum.executeAddProjectsFromMetadataActivity(DefaultContinuum.java:1569)
at
org.apache.maven.continuum.DefaultContinuum.executeAddProjectsFromMetadataActivity(DefaultContinuum.java:1815)
at
org.apache.maven.continuum.DefaultContinuum.addMavenTwoProject(DefaultContinuum.java:1365)
at
org.apache.maven.continuum.web.action.AddMavenTwoProjectAction.doExecute(AddMavenTwoProjectAction.java:109)
at
org.apache.maven.continuum.web.action.AddMavenProjectAction.execute(AddMavenProjectAction.java:189)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:404)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267)
at
org.apache.struts2.interceptor.BackgroundProcess$1.run(BackgroundProcess.java:56)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
at
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)
at
com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1694)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:939)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1120)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:623)
at
com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59)
at
org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:87)
at
org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:94)
at
org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:171)
at
org.apache.http.impl.AbstractHttpClientConnection.flush(AbstractHttpClientConnection.java:176)
at
org.apache.http.impl.conn.AbstractClientConnAdapter.flush(AbstractClientConnAdapter.java:221)
at
org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:240)
at
org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:119)
... 23 more
Tested with Apache Continuum v1.2.3 and v1.3.6
Regards, Vlado
Re: Possible solution for Exception while downloading pom from https
url
Posted by Vlado Peshov <vl...@gmail.com>.
On Tue, Apr 13, 2010 at 10:36 AM, Emmanuel Venisse <
emmanuel.venisse@gmail.com> wrote:
> Hi,
>
> Can you file an issue in jira and attach a patch?
> Thanks
>
http://jira.codehaus.org/browse/CONTINUUM-2501
Regards, Vlado
Re: Possible solution for Exception while downloading pom from https
url
Posted by Emmanuel Venisse <em...@gmail.com>.
Hi,
Can you file an issue in jira and attach a patch?
Thanks
Emmanuel
On Mon, Apr 12, 2010 at 1:29 PM, Vlado Peshov <vl...@gmail.com> wrote:
> Possible solution for exception while downloading pom from https webdav
> based repository is to modify the following lines:
>
> InetSocketAddress remoteAddress = new InetSocketAddress( host, port );
> SSLSocket sslsock = (SSLSocket) ( ( sock != null ) ? sock : createSocket()
> );
>
> to:
>
> InetSocketAddress remoteAddress = new InetSocketAddress( host, port );
> SSLSocket sslsock = (SSLSocket) ( ( sock != null ) ? sock : createSocket()
> );
> sslsock.setEnabledProtocols(new String[] {"SSLv3"});
>
> in the class:
>
> EasySSLSocketFactory.java
>
> The exception is because the http client cannot handle certificates for
> SSLv3 protocol, so this support must be explicitly enabled. Here is the
> exception:
>
> Could not download the URL: https://xxxxxx:*****@
> hostname.com/project/pom.xml
> javax.net.ssl.SSLException: Connection has been shutdown:
> javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
> at com.sun.net.ssl.internal.ssl.
>
> SSLSocketImpl.checkEOF(SSLSocketImpl.java:1267)
> at
>
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1279)
> at
> com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:43)
> at
>
> org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:87)
> at
>
> org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:94)
> at
>
> org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:171)
> at
>
> org.apache.http.impl.SocketHttpClientConnection.close(SocketHttpClientConnection.java:192)
> at
>
> org.apache.http.impl.conn.DefaultClientConnection.close(DefaultClientConnection.java:161)
> at
>
> org.apache.http.impl.conn.AbstractPooledConnAdapter.close(AbstractPooledConnAdapter.java:158)
> at
>
> org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:125)
> at
>
> org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:410)
> at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
> at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
> at
>
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
> at
>
> org.apache.maven.continuum.project.builder.AbstractContinuumProjectBuilder.createMetadataFile(AbstractContinuumProjectBuilder.java:122)
> at
>
> org.apache.maven.continuum.project.builder.AbstractContinuumProjectBuilder.createMetadataFile(AbstractContinuumProjectBuilder.java:244)
> at
>
> org.apache.maven.continuum.project.builder.maven.MavenTwoContinuumProjectBuilder.readModules(MavenTwoContinuumProjectBuilder.java:149)
> at
>
> org.apache.maven.continuum.project.builder.maven.MavenTwoContinuumProjectBuilder.buildProjectsFromMetadata(MavenTwoContinuumProjectBuilder.java:124)
> at
>
> org.apache.maven.continuum.core.action.CreateProjectsFromMetadataAction.execute(CreateProjectsFromMetadataAction.java:152)
> at
>
> org.apache.maven.continuum.DefaultContinuum.executeAction(DefaultContinuum.java:2759)
> at
>
> org.apache.maven.continuum.DefaultContinuum.executeAddProjectsFromMetadataActivity(DefaultContinuum.java:1569)
> at
>
> org.apache.maven.continuum.DefaultContinuum.executeAddProjectsFromMetadataActivity(DefaultContinuum.java:1815)
> at
>
> org.apache.maven.continuum.DefaultContinuum.addMavenTwoProject(DefaultContinuum.java:1365)
> at
>
> org.apache.maven.continuum.web.action.AddMavenTwoProjectAction.doExecute(AddMavenTwoProjectAction.java:109)
> at
>
> org.apache.maven.continuum.web.action.AddMavenProjectAction.execute(AddMavenProjectAction.java:189)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
>
> com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:404)
> at
>
> com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267)
> at
>
> org.apache.struts2.interceptor.BackgroundProcess$1.run(BackgroundProcess.java:56)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: javax.net.ssl.SSLException: Received fatal alert:
> bad_record_mac
> at
> com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:190)
> at
> com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:136)
> at
>
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1694)
> at
>
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:939)
> at
>
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1120)
> at
>
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:623)
> at
> com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:59)
> at
>
> org.apache.http.impl.io.AbstractSessionOutputBuffer.flushBuffer(AbstractSessionOutputBuffer.java:87)
> at
>
> org.apache.http.impl.io.AbstractSessionOutputBuffer.flush(AbstractSessionOutputBuffer.java:94)
> at
>
> org.apache.http.impl.AbstractHttpClientConnection.doFlush(AbstractHttpClientConnection.java:171)
> at
>
> org.apache.http.impl.AbstractHttpClientConnection.flush(AbstractHttpClientConnection.java:176)
> at
>
> org.apache.http.impl.conn.AbstractClientConnAdapter.flush(AbstractClientConnAdapter.java:221)
> at
>
> org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:240)
> at
>
> org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:119)
> ... 23 more
>
> Tested with Apache Continuum v1.2.3 and v1.3.6
>
> Regards, Vlado
>