Skip to Content.
Sympa Menu

mace-opensaml-users - Re: [OpenSAML] local part cannot be "null" when creating a QName during unmarshalling an Assertion object

Subject: OpenSAML user discussion

List archive

Re: [OpenSAML] local part cannot be "null" when creating a QName during unmarshalling an Assertion object


Chronological Thread 
  • From: Sidhartha Priye <>
  • To:
  • Subject: Re: [OpenSAML] local part cannot be "null" when creating a QName during unmarshalling an Assertion object
  • Date: Tue, 2 Mar 2010 10:31:30 -0800 (PST)
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:References:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=gCJRD02VXfE2ZboJJbxHiR4hXIHMQ3lDmNOTjmIvpMQg+bY3CuZaZ5cLMmHXaYjPOPfl6kRQ5/nxGHKpLtYCgH+JoafkSbrQK20W5us/DALRdib4Yc1SsDRanS6WMg0U4dJfeNQxn7XwCOHQGe9A6lao0kO8LbpwCw43Cr6e1fM=;

It appears the DOM parsing issue is with the CXF library distribution not
being namespace aware. They have applied the fix and would be available in
tomorrow's snapshot that I will test out.

That being said I have a dilemma I am trying to unravel:

I am trying to come up with the right combination of CXF WS+Spring+OpenSAML
2.3 using IBM JDK1.5/WAS6.1
Your documentation suggest not using SUN JAXP implementation and instead
recommends Xerces, Xalan and xmlapis shipped with OpenSAML endorsed in the
IBM JDK runtime. So I have that in place. However recent CXF distribution
tends to use the SAAJ 1.3.2 libraries that does not work with IBM JDK 1.5/WAS
6.1. So I have to endorse the SAAJ1.2 libraries in WAS/IBM JDK.

If I do that I am running into the following -
Exception in thread "main" java.lang.NoSuchMethodError:
javax/xml/soap/SOAPFault.setFaultCode(Ljavax/xml/namespace/QName;)V
at
org.apache.cxf.binding.soap.saaj.SAAJInInterceptor.handleMessage(SAAJInInterceptor.java:154)
at
org.apache.cxf.jaxws.handler.soap.SOAPMessageContextImpl.getMessage(SOAPMessageContextImpl.java:78)
at
org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.createProtocolMessageContext(SOAPHandlerInterceptor.java:236)
at
org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInternal(SOAPHandlerInterceptor.java:144)
at
org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:119)
at
org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAPHandlerInterceptor.java:69)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:243)

Since I am not dropping the jaxp-ri-1.4.2 jar (cannot use with OpenSAML)
which has the QName it is complaining. Is there a replacement jar which
contains the QName class. For now I can drop in the stax-api-1.0.1.jar (which
has QName) which is not allowed to be used with newer CXF distribution.
Woodstox doesnot have a QName class.

So if you see this is a deployer's nightmare trying to mix and match to work
with CXF+Spring+OpenSAML on Websphere. + IBM JDK 1.5

Any suggestions/tips will be greatly appreciated

thanks
Sid




----- Original Message ----
> From: Scott Cantor
> <>
> To:
>
> Sent: Mon, March 1, 2010 4:54:47 PM
> Subject: RE: [OpenSAML] local part cannot be "null" when creating a QName
> during unmarshalling an Assertion object
>
> > Aah, sorry...you are right...when you meant parsing the XML I was relating
> > it to parsing the SOAPHeader which represent a DOM element. Here is the
> > client side that builds the DOM. This is the client side JAX WS Handler
> that
> > injects the SAML into the SOAPHeader.
>
> That's not where the XML is being parsed by your server. If the XML is
> parsed by something you don't control, then you're going to have to get
> control to fix it.
>
> -- Scott







Archive powered by MHonArc 2.6.16.

Top of Page