[ http://jira.codehaus.org/browse/XFIRE-1125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=153788#action_153788 ]
Jorg Heymans commented on XFIRE-1125: ------------------------------------- a note should be added to the documentation that without this patch the XFireClientFactoryBean does not work as described in SSL mode. > XFireClientFactoryBean should use commons-httpclient for SSL requests > --------------------------------------------------------------------- > > Key: XFIRE-1125 > URL: http://jira.codehaus.org/browse/XFIRE-1125 > Project: XFire > Issue Type: Bug > Components: Spring > Affects Versions: 1.2.6 > Environment: spring 2.5.4, tomcat 6.0.10, java 1.6, windows xp > Reporter: Ilya Boyandin > Assignee: Dan Diephouse > Attachments: patch.tar > > > XFireClientFactoryBean attempts to use the buggy URL class for establishing > connection over SSL even when commons-https is available. This contradicts > the documentation (http://xfire.codehaus.org/HTTP+Transport). > I get the following exception: > javax.net.ssl.SSLHandshakeException: Remote host closed connection during > handshake > at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:808) > at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1096) > at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1123) > at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1107) > at > sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:405) > at > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166) > at > sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:977) > at > sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:234) > at java.net.URL.openStream(URL.java:1009) > at org.codehaus.xfire.util.Resolver.tryFileSystem(Resolver.java:83) > at org.codehaus.xfire.util.Resolver.<init>(Resolver.java:47) > at org.codehaus.xfire.util.Resolver.<init>(Resolver.java:35) > at > org.codehaus.xfire.spring.remoting.XFireClientFactoryBean.makeClient(XFireClientFactoryBean.java:496) > at > org.codehaus.xfire.spring.remoting.XFireClientFactoryBean.createClient(XFireClientFactoryBean.java:412) > at > org.codehaus.xfire.spring.remoting.XFireClientFactoryBean.access$100(XFireClientFactoryBean.java:54) > at > org.codehaus.xfire.spring.remoting.XFireClientFactoryBean$ProxyInterceptor.getClient(XFireClientFactoryBean.java:640) > at > org.codehaus.xfire.spring.remoting.XFireClientFactoryBean$ProxyInterceptor.invoke(XFireClientFactoryBean.java:601) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) > at > org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) > ... 34 more > Caused by: java.io.EOFException: SSL peer shut down incorrectly > at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:333) > at > com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:789) > ... 52 more > With the following client code: > private XFireClientFactoryBean authWebService; > ... > ProtocolSocketFactory easy = new EasySSLProtocolSocketFactory(); > Protocol protocol = new Protocol("https", easy, 8443); > Protocol.registerProtocol("https", protocol); > RemoteAuthService auth = (RemoteAuthService)authWebService.getObject(); > auth.authenticateBySsoAuthCode("test"); > The commons-httpclient and commons-codec jars are in the classpath. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email