[
https://issues.apache.org/jira/browse/CXF-7334?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Colm O hEigeartaigh resolved CXF-7334.
--------------------------------------
Resolution: Cannot Reproduce
We need a test-case to be able to reproduce the problem.
> HTTPS CN check errors when disableCNCheck is set to true
> --------------------------------------------------------
>
> Key: CXF-7334
> URL: https://issues.apache.org/jira/browse/CXF-7334
> Project: CXF
> Issue Type: Bug
> Components: Transports
> Affects Versions: 3.1.9, 3.1.10, 3.1.11
> Environment: OpenJDK 1.8.0_121, JBoss EAP 6.4.3.GA
> Reporter: Kisrákói Gyula
> Priority: Major
>
> We get CN check errors in some of our deployments, although 'disableCNCheck'
> is set to true in the config. The same application is deployed with the same
> configuration and environment on two server instances. On the first server it
> works, we get no such error, on the second server (which is cloned from the
> first one) every request fails. I couldn't reproduce the error in our test
> environment.
> I've excluded all JBoss's built-in CXF classes in the deployment descriptor,
> so it's not a classloading problem, the CXF classes in use are the bundled
> ones in the application.
> The HTTP conduit configuration for the client:
> {code}
> <http:conduit name="{<namespace>}<port>.http-conduit">
> <http:tlsClientParameters disableCNCheck="true"
> useHttpsURLConnectionDefaultHostnameVerifier="false" sslCacheTimeout="1">
> ...
> {code}
> The HTTP conduit configuration is applied to the requests, I see the
> following in the debug log:
> {code}
> <date> DEBUG org.apache.cxf.transport.http.HTTPConduit - Conduit
> '{<namespace>}<port>.http-conduit' has been configured for TLS keyManagers
> [sun.security.ssl.SunX509KeyManagerImpl@a4cb362]trustManagers
> [sun.security.ssl.X509TrustManagerImpl@34ed52cf]secureRandom nullDisable
> Common Name (CN) Check: true
> {code}
> The error:
> {code}
> <date> WARN org.apache.cxf.phase.PhaseInterceptorChain - Interceptor for
> {<namespace>}port#{<namespace>}<operation> has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Could not send Message.
> at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
> at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:514)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:423)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:324)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:277)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
> at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:139)
> at com.sun.proxy.$Proxy241.<operation>(Unknown Source)
> .....
> Caused by: java.io.IOException: IOException invoking
> https://<server-ip>:<port>/<service>/<path>: The https URL hostname does not
> match the Common Name (CN) on the server certificate in the client's
> truststore. Make sure server certificate is correct, or to disable this
> check (NOT recommended for production) set the CXF client TLS configuration
> property "disableCNCheck" to true.
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1385)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1369)
> at
> hu.logesz.cxf.logging.LoggingOutInterceptor$OutputStreamWrapper.close(LoggingOutInterceptor.java:203)
> at
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:653)
> at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> ... 53 more
> Caused by: java.io.IOException: The https URL hostname does not match the
> Common Name (CN) on the server certificate in the client's truststore. Make
> sure server certificate is correct, or to disable this check (NOT recommended
> for production) set the CXF client TLS configuration property
> "disableCNCheck" to true.
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1291)
> at
> org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:305)
> at
> org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)
> at
> org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1341)
> ... 57 more
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)