Yes Dan I have read that link a few times. 

Per IBM WAS 6.1 is meant to support SAAJ1.2. However recent cxf versions
(for e.g. cxf2.2.6 uses SAAJ1.3 spec). The setFault(QName) method it appears
was introduced in SAAJ1.3. For that reason if I use cxf2.2.6 I get the error
on WAS while I dont when I use cxf-incubator-2.0. 

Also WAS 6.1 does not understand saaj-api-1.3 and saaj-impl-1.3.2 jars even
if they are endorsed. WAS 7.0 officially supports SAAJ1.3, however our
client is using on version 6.1 FP 23 +. May be its time to persuade them to
move to WAS 7.0 

That being said I have not tried the last option that suggests someone got
it working using SAAJ1.3.2 jars on WAS 6.1. 

Another user running WS6.1 FP 23 without the web services feature pack came
up with this solution that seemed to work for them:

    Create a shared library with the following jars:
    jsr173_api-1.0.jar
    jaxp-ri-1.4.2.jar
    saaj-impl-1.3.2.jar
    wsdl4j-1.6.2.jar

    Create a new parent-first classloader and have it reference the shared
library you just created. Restart everything and it should work.


Will keep you informed

thanks
Sid

dkulp wrote:
> 
> 
> Have you read everything at:
> 
> http://cxf.apache.org/docs/application-server-specific-configuration-guide.html#ApplicationServerSpecificConfigurationGuide-Websphere
> 
> IBM actually provides docs for using other JAX-WS providers with the
> recent versions of WebSphere.
> 
> Dan
> 
> 
> On Tuesday 02 March 2010 10:18:01 am PrSd wrote:
>> Server Environment:
>> WAS 6.1 (only endorses SAAJ1.2) , CXF 2.2.6 (uses SAAJ1.3), Spring 2.5.6
>> and Open SAML 2.3
>> 
>> When running the SOAPClient from within RAD 7.0 I am
>> 
>> Getting a
>> 
>> 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(SAAJInInte
>> rceptor.java:154) at
>> org.apache.cxf.jaxws.handler.soap.SOAPMessageContextImpl.getMessage(SOAPMes
>> sageContextImpl.java:78) at
>> org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.createProtocolMess
>> ageContext(SOAPHandlerInterceptor.java:236) at
>> org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInter
>> nal(SOAPHandlerInterceptor.java:144) at
>> org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAP
>> HandlerInterceptor.java:119) at
>> org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(SOAP
>> HandlerInterceptor.java:69) at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>> n.java:243) at
>> org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:672)
>> 
>> This appears to be a SAAJ Version mismatch. So here is my setup.
>> 
>> However even if I endorse SAAJ1.3.2 on WAS, Websphere 6.1 does not
>> support
>> and gets confused and never recognizes that library. (although WAS 7.0
>> supports SAAJ1.3.2). My WS client is being run from inside the Rational
>> (Eclipse) IDE. On the server, I have endorsed using the SAAJ1.2 libraries
>> on the WAS server which WAS recognizes.
>> 
>> So to be consistent on the client side I try to endorse the same SAAJ1.2
>> jars, however CXF 2.2.6 only uses SAAJ1.3 and thus throws the above
>> exception.
>> 
>> Please correct if my above assumption is misplaced. So my question is
>> what
>> version of CXF uses a SAAJ1.2 implementation so that it is compatible
>> with
>> WAS6.1. Also since I am using Open SAML I would like to make sure that I
>> am
>> using the SAAJ libraries that is using a DOM2 parser for DOM building of
>> the SOAP messages.
>> 
>> thanks a much in advance
>> Sid
> 
> -- 
> Daniel Kulp
> [email protected]
> http://dankulp.com/blog
> 
> 

-- 
View this message in context: 
http://old.nabble.com/CXF-SAAJ-Version-compatibility-with-WAS6.1-tp27757073p27777016.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to