Hi,
take a look at cxf's transform feature here
http://cxf.apache.org/docs/transformationfeature.html#TransformationFeature-Replacingtextcontent

you need there
<entry key="faultcode" value="faultcode=SOAP-ENV:Client"/>

this will map the original invalid fault from the server into the
following valid fault so that it can be accepted by the cxf client
<SOAP-ENV:Fault><faultcode>SOAP-ENV:Client</faultcode><faultstring>Se
ha proporcionado un token de seguridad
erróneo</faultstring></SOAP-ENV:Fault>

regards, aki

2015-06-08 17:40 GMT+02:00 "Ángel L. García Sánchez" <[email protected]>:
> Hi Aki.
>
> The problem is that i don't get access to server side.
> Can i avoid this error with namespace?
>
> Thanks and best regards.
>
> El 08/06/15 a las 15:26, Aki Yoshida escribió:
>
>> The error message says your server is returning an invalid SOAP fault
>> (the wsse prefix is not bound).
>> It should be returning something like ...<faultcode
>> xmlns:wssec="...">wsse:InvalidSecurityToken</faultcode> ....
>>
>> and your CXF client is complaining about it.
>>
>> 2015-06-08 12:51 GMT+02:00 "Ángel L. García Sánchez" <[email protected]>:
>>>
>>> Hi.
>>>
>>> I'm developing a web service client with Apache CXF 3.1.0 (also test with
>>> 2.7.16). When the soap message validation fails on server I get a soap
>>> fault
>>> like this:
>>>
>>> Payload: <?xml version="1.0" encoding="UTF-8"?>
>>> <SOAP-ENV:Envelope
>>>
>>> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>wsse:InvalidSecurityToken</faultcode><faultstring>Se
>>> ha proporcionado un token de seguridad
>>>
>>> erróneo</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope>
>>>
>>> But when my client tries to unmarshall the fault I get this exception:
>>>
>>> java.lang.RuntimeException: Invalid QName in mapping:
>>> wsse:InvalidSecurityToken
>>>      at org.apache.cxf.staxutils.StaxUtils.readQName(StaxUtils.java:1839)
>>> ~[cxf-api-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalFault(Soap11FaultInInterceptor.java:64)
>>> ~[cxf-rt-bindings-soap-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:51)
>>> ~[cxf-rt-bindings-soap-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:40)
>>> ~[cxf-rt-bindings-soap-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
>>> [cxf-api-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:113)
>>> [cxf-api-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
>>> [cxf-rt-bindings-soap-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
>>> [cxf-rt-bindings-soap-2.7.16.jar:2.7.16]
>>>      at
>>>
>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)
>>> [cxf-api-2.7.16.jar:2.7.16]
>>>      at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:849)
>>> [cxf-api-2.7.16.jar:2.7.16]
>>> ............
>>>
>>> How to get around this error?
>>>
>>> Thanks and best regards.
>
>

Reply via email to