Does it work with the specific imports instead of the cxf-all.xml?

If so, that suggests a bug in the cxf-all.xml. That will kind of suck. Can you copy the contents of cxf-all.xml into your beans file and start adding/removing things until it works? That may help us figure out what's going on.

Thanks!
Dan



On Jun 11, 2008, at 1:23 PM, jsolderitsch wrote:


I have used cxf (2.0.6) to create a mock service implementation AND a client
from a customer wsdl.

I can deploy the mock service (to oc4j) and get the wsdl back in the
browser.

I want to call the client from another web app and so far this is failing.

I have a junit test that I am hoping to use to expose the problem but I am
stumped now by a spring error.

The service is accessible via an https url -- ssl seems to be correctly
implemented for the test oc4j instance.

When I run the test, I see:

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.385 sec
<<< FAILURE!
testHighLevelSimulatorServiceEstablishConnectionTest (com.gestalt.integration.mde.mdd.SimulatorServiceIntTest)
Time elapsed: 1.345 sec  <<< ERROR!
java.lang.RuntimeException:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory' defined in class path resource [META-INF/cxf/cxf-extension- http.xml]: Cannot resolve reference to bean 'cxf' while setting bean property 'bus'; nested
exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean
named 'cxf' is defined
       at
org .apache .cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:96)
       at
org .apache .cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:87)
       at
org .apache .cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:65)
       at
org .apache .cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:54)
       at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:69)
       at
org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:106)
at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:97)
       at
org .apache .cxf.jaxws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java: 54)
       at javax.xml.ws.Service.<init>(Service.java:57)
       at
mil .dod .metadata .mdr .ns .mde ._1_0 .ws .metadatadiscoveryservice .MetadataDiscoveryService_Service .<init>(MetadataDiscoveryService_Service.java:41)
       at
com .gestalt .integration .mde .mdd .client .impl .MetadataDiscoveryServiceClient .<init>(MetadataDiscoveryServiceClient.java:16)
       at
com .gestalt .integration .mde .mdd .proxy .impl .MetadataDiscoveryServiceProxyImpl .<init>(MetadataDiscoveryServiceProxyImpl.java:28)
       at
com .gestalt .integration .mde .mdd .SimulatorServiceIntTest .testHighLevelSimulatorServiceEstablishConnectionTest (SimulatorServiceIntTest.java:54) Caused by: org.springframework.beans.factory.BeanCreationException: Error
creating bean with name
'org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory' defined in class path resource [META-INF/cxf/cxf-extension-http.xml]: Cannot resolve reference to bean 'cxf' while setting bean property 'bus'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean
named 'cxf' is defined

Our beans file looks like this:

<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xmlns:sec="http://cxf.apache.org/configuration/security";
  xmlns:http="http://cxf.apache.org/transports/http/configuration";
        xmlns:jaxws="http://cxf.apache.org/jaxws";
        xsi:schemaLocation="
                   http://cxf.apache.org/configuration/security
                      http://cxf.apache.org/schemas/configuration/security.xsd
          http://cxf.apache.org/transports/http/configuration
             http://cxf.apache.org/schemas/configuration/http-conf.xsd
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://cxf.apache.org/jaxws
        http://cxf.apache.org/schemas/jaxws.xsd";>
<!--
        <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" />
-->
        <import resource="classpath:META-INF/cxf/cxf-all.xml" />
        <jaxws:endpoint
          id="mdd"
        
implementor = "com .gestalt .integration .mde.mdd.service.impl.MetadataDiscoveryServiceSimulatedImpl"
          wsdlLocation="WEB-INF/wsdl/MetadataDiscoveryService.wsdl"
          address="/service"  />
  <http:conduit name="*.http-conduit">
      <http:tlsClientParameters secureSocketProtocol="SSL">
      </http:tlsClientParameters>
      <http:client AutoRedirect="true" Connection="Keep-Alive"/>
  </http:conduit>

</beans>

Note that I just commented out the separate cxf imports in favor of the
cxf-all import.

Does this look like I am doing something stupid?

Any hints appreciated.

Jim
--
View this message in context: 
http://www.nabble.com/junit-test-with-spring-and-cxf-failing----no-bean-named-cxf-is-defined-tp17782928p17782928.html
Sent from the cxf-user mailing list archive at Nabble.com.


---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog




Reply via email to