Hi Bryan,

I see the saaj-api dependency in your pom entries below, but I don't see a
saaj-impl dependency.  I suspect thats what you are missing.

    <dependency>
        <groupId>com.sun.xml.messaging.saaj</groupId>
        <artifactId>saaj-impl</artifactId>
        <version>1.3</version>
    </dependency>

Let us know if that helps any...

Cheers,
Peter

On Tue, Aug 07, 2007 at 03:19:09PM -0600, Bryan Hansen wrote:
> Hello,
> 
> I am trying to run the example here:
> 
> http://cwiki.apache.org/CXF20DOC/writing-a-service-with-spring.html
> 
> I have setup everything to the best of my knowledge correctly and it deploys
> on the server, but when I try to run the client I get this exception:
> 
> javax.xml.ws.WebServiceException: Cannot create SAAJ factory instance.
>     at org.apache.cxf.jaxws.binding.soap.SOAPBindingImpl.getSOAPFactory(
> SOAPBindingImpl.java:118)
>     at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java
> :150)
>     at $Proxy42.sayHi(Unknown Source)
>     at org.lds.ticketing.integration.WebServiceClientTest.testWebService(
> WebServiceClientTest.java:15)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at sun.reflect.NativeMethodAccessorImpl.invoke(
> NativeMethodAccessorImpl.java:39)
>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:25)
>     at java.lang.reflect.Method.invoke(Method.java:585)
>     at junit.framework.TestCase.runTest(TestCase.java:168)
>     at junit.framework.TestCase.runBare(TestCase.java:134)
>     at org.springframework.test.ConditionalTestCase.runBare(
> ConditionalTestCase.java:69)
>     at junit.framework.TestResult$1.protect(TestResult.java:110)
>     at junit.framework.TestResult.runProtected(TestResult.java:128)
>     at junit.framework.TestResult.run(TestResult.java:113)
>     at junit.framework.TestCase.run(TestCase.java:124)
>     at junit.framework.TestSuite.runTest(TestSuite.java:232)
>     at junit.framework.TestSuite.run(TestSuite.java:227)
>     at org.junit.internal.runners.OldTestClassRunner.run(
> OldTestClassRunner.java:76)
>     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(
> JUnit4TestReference.java:38)
>     at org.eclipse.jdt.internal.junit.runner.TestExecution.run(
> TestExecution.java:38)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:460)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(
> RemoteTestRunner.java:673)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(
> RemoteTestRunner.java:386)
>     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(
> RemoteTestRunner.java:196)
> Caused by: javax.xml.soap.SOAPException: Unable to create SOAP Factory:
> Unable to create SAAJ meta-factoryProvider
> com.sun.xml.messaging.saaj.soap.SAAJMetaFactoryImpl not found
>     at javax.xml.soap.SOAPFactory.newInstance(Unknown Source)
>     at org.apache.cxf.jaxws.binding.soap.SOAPBindingImpl.getSOAPFactory(
> SOAPBindingImpl.java:113)
>     ... 23 more
> 
> I googled for that error and the only relevant response I could find said to
> make sure that I had the correct version of the saaj library, 1.3 which I
> do.
> 
> My spring service is defined like this:
> 
>     <import resource="classpath:META-INF/cxf/cxf.xml" />
>     <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
>     <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
> 
>     <jaxws:endpoint
>       id="helloWorld"
>       implementor="org.foo.service.web.HelloWorldImpl"
>       address="/HelloWorld" />
> 
> And the client is defined as:
> 
> <bean id="client" class="org.foo.service.web.HelloWorld"
>       factory-bean="clientFactory" factory-method="create"/>
> 
>     <bean id="clientFactory" class="
> org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
>       <property name="serviceClass" value="org.foo.service.web.HelloWorld"/>
>       <property name="address" value="
> http://localhost:8080/ticketing/HelloWorld"/>
>     </bean>
> 
> The versions of the classes from my maven2 pom are:
> 
> <dependency>
>             <groupId>org.apache.cxf</groupId>
>             <artifactId>cxf</artifactId>
>             <version>2.0-incubator</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>commons-logging</groupId>
>             <artifactId>commons-logging</artifactId>
>             <version>1.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.activation</groupId>
>             <artifactId>activation</artifactId>
>             <version>1.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.annotation</groupId>
>             <artifactId>jsr250-api</artifactId>
>             <version>1.0</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.mail</groupId>
>             <artifactId>mail</artifactId>
>             <version>1.4</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>org.apache.neethi</groupId>
>             <artifactId>neethi</artifactId>
>             <version>2.0</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.xml.bind</groupId>
>             <artifactId>jaxb-api</artifactId>
>             <version>2.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.xml</groupId>
>             <artifactId>jaxb-impl</artifactId>
>             <version>2.1.4</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.xml.ws</groupId>
>             <artifactId>jaxws-api</artifactId>
>             <version>2.0</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.jws</groupId>
>             <artifactId>jsr181</artifactId>
>             <version>1.0</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>javax.xml.soap</groupId>
>             <artifactId>saaj-api</artifactId>
>             <version>1.3</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>stax</groupId>
>             <artifactId>stax-api</artifactId>
>             <version>1.0.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>org.apache.ws.commons</groupId>
>             <artifactId>XmlSchema</artifactId>
>             <version>1.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>org.codehaus.woodstox</groupId>
>             <artifactId>wstx-asl</artifactId>
>             <version>3.2.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>wsdl4j</groupId>
>             <artifactId>wsdl4j</artifactId>
>             <version>1.6.1</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>aopalliance</groupId>
>             <artifactId>aopalliance</artifactId>
>             <version>1.0</version>
>         </dependency>
> 
>         <dependency>
>             <groupId>xml-resolver</groupId>
>             <artifactId>xml-resolver</artifactId>
>             <version>1.2</version>
>         </dependency>
> 
> Any ideas as to what might be wrong?
> 
> Thanks,
> 
> Bryan

-- 
Peter Jones
IONA Technologies Inc.
E-Mail: mailto:[EMAIL PROTECTED]
Tel: (w) 709-738-3725 x22 | Fax: 709-738-3745
84-86 Elizabeth Ave. St. John's, NL A1A 1W7 Canada

Reply via email to