cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rajla <rajabr...@yahoo.com>
Subject Re: CXF WS-security Signing not working - "javax.xml.ws.soap.SOAPFaultException: No such Localname for SOAP URI"
Date Wed, 17 Jun 2009 19:21:58 GMT

Hey Dan, the problem must be something with Spring 3.0+ and CXF
compatibility.  That is all I can think of....  What sort of server logs? 
All the server really does is throw the exception I posted below after it
chokes and pukes.  Other than that I don't see anything else in stdout.

Thanks


dkulp wrote:
> 
> 
> Since that error message is coming back in the Fault, that is something on
> the 
> server side.  Thus, we'd need to see the logs for the server side.
> 
> I've never seen that error before either.   Bizarre.
> 
> 
> Dan
> 
> 
> On Tue June 16 2009 5:12:17 pm rajla wrote:
>> Hello, I am getting the exception
>> "javax.xml.ws.soap.SOAPFaultException: No such Localname for SOAP URI"
>> when
>> implementing signature secruity with WS-Security in CXF.  What does this
>> mean?  Anyone have any insights on what I can do to resolve this issue?
>>
>>
>> Honestly, I don't remember this being so difficult to implement in older
>> CXF and I don't think I have ever seen this error before.  I tried to to
>> google it a lot today and by the looks of it, not many other people have
>> seen this before either.  I am on version 2.2 now.
>>
>> Could anyone please describe to me what this error means?  What process
>> do
>> I need to resolve it?  P.S.  The web service works fine without the
>> interceptors when I don't try and use WS-security.  I followed the
>> WS-Security instructions listed here:
>> http://cwiki.apache.org/CXF20DOC/ws-security.html
>>
>> That is, I generated a keystore for my server side, generated a public
>> key
>> for my client.  Imported the public key for my client into the keystore.
>>
>> Any assistance anyone can give me in regards to resolving this issue is
>> greatly appreciated.
>>
>> Below is the whole message and exception, including the SOAP exchange and
>> stuff.:
>>
>> log4j:WARN No appenders could be found for logger
>> (org.apache.cxf.bus.spring.BusApplicationContext).
>> log4j:WARN Please initialize the log4j system properly.
>> Jun 16, 2009 11:00:10 AM org.apache.cxf.bus.spring.BusApplicationContext
>> getConfigResources
>> INFO: No cxf.xml configuration file detected, relying on defaults.
>> Jun 16, 2009 11:00:14 AM
>> org.apache.cxf.service.factory.ReflectionServiceFactoryBean
>> buildServiceFromClass
>> INFO: Creating Service {http://teams.ea.com/}EATeamsWSService from class
>> com.ea.teams.EATeamsWS
>> Jun 16, 2009 11:00:26 AM
>> org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
>> INFO: Outbound Message
>> ---------------------------
>> ID: 1
>> Address: http://teams-rwsdv:9019/teamsws/EATeamsWS
>> Encoding: UTF-8
>> Content-Type: text/xml
>> Headers: {SOAPAction=[""], Accept=[*/*]}
>> Payload: <soap:Envelope
>> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><wsse:S
>>ecurity
>> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecur
>>ity-secext-1.0.xsd" soap:mustUnderstand="1"><ds:Signature
>> xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Signature-1">
>> <ds:SignedInfo>
>> <ds:CanonicalizationMethod
>> Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
>> <ds:SignatureMethod
>> Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"
>> />
>> <ds:Reference URI="#id-2">
>> <ds:Transforms>
>> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
>> </ds:Transforms>
>> <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
>> <ds:DigestValue>9ugq2OUuSZq3m5dk2pchTf+XSNA=</ds:DigestValue>
>> </ds:Reference>
>> </ds:SignedInfo>
>> <ds:SignatureValue>
>> ntGCqu+lVsS5LWvKr2Bovba2xkOrIH7uOVwPk2GzEDVBUd6hdWY1Cw/l/DXH2MtFgokwNrJ2q74
>>o
>> 2wkjiZ+Tc2ak13ccUGAFWFuc0YmVoSZgYtRRZY/phhj7SHREQiodCeMQ7/4j8IZxZDf+JpGy3dw
>>d js2fRIuc9g7AvpC7KX0=
>> </ds:SignatureValue>
>> <ds:KeyInfo Id="KeyId-327383FBE9F26CE8EF12451752261752">
>> <wsse:SecurityTokenReference
>> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecur
>>ity-secext-1.0.xsd"
>> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuri
>>ty-utility-1.0.xsd"
>> wsu:Id="STRId-327383FBE9F26CE8EF12451752261753"><ds:X509Data>
>> <ds:X509IssuerSerial>
>> <ds:X509IssuerName>CN=teams</ds:X509IssuerName>
>> <ds:X509SerialNumber>1245171677</ds:X509SerialNumber>
>> </ds:X509IssuerSerial>
>> </ds:X509Data></wsse:SecurityTokenReference>
>> </ds:KeyInfo>
>> </ds:Signature></wsse:Security></soap:Header><soap:Body
>> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuri
>>ty-utility-1.0.xsd" wsu:Id="id-2"><ns1:retrieveAllFields
>> xmlns:ns1="http://teams.ea.com/"><username>sysadmin</username><password>4ea
>>labels</password></ns1:retrieveAllFields></soap:Body></soap:Envelope>
>> --------------------------------------
>> Jun 16, 2009 11:00:27 AM org.apache.cxf.interceptor.LoggingInInterceptor
>> logging
>> INFO: Inbound Message
>> ----------------------------
>> ID: 1
>> Encoding: UTF-8
>> Content-Type: text/xml; charset=utf-8
>> Headers: {Content-Length=[225], Server=[Jetty(6.1.18)],
>> content-type=[text/xml; charset=utf-8]}
>> Payload: <soap:Envelope
>> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><soap:Fau
>>lt><faultcode>soap:Server</faultcode><faultstring>No such Localname
for
SOAP
>> URI</faultstring></soap:Fault></soap:Body></soap:Envelope>
>> --------------------------------------
>> javax.xml.ws.soap.SOAPFaultException: No such Localname for SOAP URI
>> 	at
>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:141)
>> 	at $Proxy47.retrieveAllFields(Unknown Source)
>> 	at test.ea.ws.WebServiceClient.main(WebServiceClient.java:46)
>> Caused by: org.apache.cxf.binding.soap.SoapFault: No such Localname for
>> SOAP URI
>> 	at
>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalF
>>ault(Soap11FaultInInterceptor.java:75) at
>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMess
>>age(Soap11FaultInInterceptor.java:46) at
>> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMess
>>age(Soap11FaultInInterceptor.java:35) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>>n.java:236) at
>> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(Ab
>>stractFaultChainInitiatorObserver.java:96) at
>> org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage
>>(CheckFaultInterceptor.java:69) at
>> org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage
>>(CheckFaultInterceptor.java:34) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>>n.java:236) at
>> org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:645) at
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRespons
>>eInternal(HTTPConduit.java:2132) at
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRespons
>>e(HTTPConduit.java:2015) at
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPCon
>>duit.java:1940) at
>> org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputSt
>>ream.java:47) at
>> org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:180)
>> at
>> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
>> at
>> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:627) at
>> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInte
>>rceptor.handleMessage(MessageSenderInterceptor.java:62) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>>n.java:236) at
>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:471) at
>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:301) at
>> org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:253) at
>> org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73) at
>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:121)
>> ...
>> 2 more
>> *************FINISHED!*************
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://www.nabble.com/CXF-WS-security-Signing-not-working---%22javax.xml.ws.soap.SOAPFaultException%3A-No-such-Localname-for-SOAP-URI%22-tp24062970p24080270.html
Sent from the cxf-dev mailing list archive at Nabble.com.


Mime
View raw message