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 Thu, 18 Jun 2009 01:11:03 GMT

Sorry Dan, sometimes I am a a really loser.....you are 100% right, the guilty
party was old AXIS stuff server side.  After that, I pushed the SAAJ stuff
into the stupid endorsed directory (who came up with that brilliant idea
anyway???? it is like the JBoss windows registry ha ha ha).....

anyway, then I added bouncy castle stuff to my class path and voila.....

Speaking of which, I don't remember needing bouncy castle before
either......in fact, i think i have working in-production web services
without bouncy castle.....which is a little weird.....anyway, no big deal,
once i put it in, it works like a champ.

thanks Dan, I would never have realized with was AXIS stuff without you...



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:Security
> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-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/DXH2MtFgokwNrJ2q74o
> 2wkjiZ+Tc2ak13ccUGAFWFuc0YmVoSZgYtRRZY/phhj7SHREQiodCeMQ7/4j8IZxZDf+JpGy3dwd
> js2fRIuc9g7AvpC7KX0=
> </ds:SignatureValue>
> <ds:KeyInfo Id="KeyId-327383FBE9F26CE8EF12451752261752">
> <wsse:SecurityTokenReference
> xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
> xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-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-wssecurity-utility-1.0.xsd"
> wsu:Id="id-2"><ns1:retrieveAllFields
> xmlns:ns1="http://teams.ea.com/"><username>sysadmin</username><password>4ealabels</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:Fault><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.unmarshalFault(Soap11FaultInInterceptor.java:75)
> 	at
> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:46)
> 	at
> org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> 	at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> 	at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.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(PhaseInterceptorChain.java:236)
> 	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:645)
> 	at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2132)
> 	at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2015)
> 	at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1940)
> 	at
> org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.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$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> 	at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.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!*************
> 

-- 
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-tp24062970p24084854.html
Sent from the cxf-dev mailing list archive at Nabble.com.


Mime
View raw message