[ http://jira.codehaus.org/browse/XFIRE-1125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jorg Heymans updated XFIRE-1125: -------------------------------- Attachment: patch.tar This patch forces Resolver and ObjectServiceFactory to use commons-http instead of url.openStream(). This makes it possible to register custom protocol handlers for commons-http as described in the documentation (http://xfire.codehaus.org/HTTP+Transport) e.g. [code] Protocol authhttps = new Protocol("https", new AuthSSLProtocolSocketFactory(new URL( "file:/c:/ClientIdentityStore.jks"), "mykeypass", new URL("file:/c:/TrustServer.jks"), "mykeypass"), 22222); Protocol.registerProtocol("https", authhttps); [/code] > 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