Joerg Kessler created CXF-5325:
----------------------------------

             Summary: error when having alternative transport bindings in WSDL
                 Key: CXF-5325
                 URL: https://issues.apache.org/jira/browse/CXF-5325
             Project: CXF
          Issue Type: Bug
          Components: Configuration
            Reporter: Joerg Kessler
             Fix For: 2.7.6
         Attachments: cxf.client.test.sync.client.cert.junit.ext.zip

Hi,
we have received a WSDL from a WS provider that allows Basic Authentication or 
Client Certificate Authentication. When I configure Client Certificate 
Authentication in the conduit for my CXF WS consumer. I receive the following 
error

WARNUNG: Interceptor for 
{http://xi.com/xiveri/source_runtime}ZMTOM_CXF_IN#{http://xi.com/xiveri/source_runtime}CXF_IN
 has thrown exception, unwinding now
org.apache.cxf.ws.policy.PolicyException: Assertion of type 
{http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}HttpsToken could not 
be asserted: HttpBasicAuthentication is set, but not being used
        at 
org.apache.cxf.ws.security.policy.interceptors.HttpsTokenInterceptorProvider$HttpsTokenOutInterceptor.assertHttps(HttpsTokenInterceptorProvider.java:144)
        at 
org.apache.cxf.ws.security.policy.interceptors.HttpsTokenInterceptorProvider$HttpsTokenOutInterceptor.handleMessage(HttpsTokenInterceptorProvider.java:87)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:541)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:467)
If I just allow Client Certificarte it works. If in the WSDL Client Certificate 
is defined first it works. If I use WSRM the Create Sequence is executed 
without error, the message fails. 
I did some investigations. It seems that the HTTPSToken for Client Certificate 
is correctly evaluated by Neethi/CXF but some how get lost during the WSDL 
parsing. At the end all alternative policies contain a transport binding 
(referencing a transport token) referencing a HTTPSToken that requires Basic 
Authentication. I have attached a maven project that includes a simple junit 
test. It uses the Camel test functionality (CamelSpringTestSupport) to send 
directly a message to a CXF endpoint. mvn install or executing the junit test 
leads automatically to the error described above.

Best Regards,

Jörg



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to