Author: ningjiang
Date: Thu Jan  8 20:54:36 2009
New Revision: 732926

URL: http://svn.apache.org/viewvc?rev=732926&view=rev
Log:
Merged revisions 732923 via svnmerge from 
https://svn.apache.org/repos/asf/activemq/camel/trunk

........
  r732923 | ningjiang | 2009-01-09 12:23:05 +0800 (Fri, 09 Jan 2009) | 1 line
  
  CAMEL-1238 using the CXFEndpoint's bus instead of creating a new one.
........

Modified:
    activemq/camel/branches/camel-1.x/   (props changed)
    
activemq/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/DeadLetterChannelOnRedeliveryTest.java
   (props changed)
    
activemq/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/PipelineMEPTest.java
   (props changed)
    
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
    
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
    
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBean.java
    
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
    
activemq/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java

Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan  8 20:54:36 2009
@@ -1 +1 @@
-/activemq/camel/trunk:709850,711200,711206,711219-711220,711523,711531,711756,711784,711859,711874,711962,711971,712064,712119,712148,712662,712692,712925,713013,713107,713136,713273,713290,713292,713295,713314,713475,713625,713932,713944,714032,717965,717989,718242,718273,718312-718515,719163-719184,719334,719339,719524,719662,719848,719851,719855,719864,719978-719979,720207,720435-720437,720806,721272,721331,721333-721334,721360,721669,721764,721813,721985,722005,722070,722110,722415,722438,722726,722845,722878,723264,723314,723325-723327,723409,723835,723966,724122,724619,724681,725040,725309-725320,725340,725351,725569-725572,725612,725652-725660,725715,725883,726339,726640-726645,726932,727113,727375,727377,727624,727713,727946,729401,729892,730069,730132,730154,730157,730275,730299,730504-730505,730508,730571,730599,730759,730903,730916,730923,730936,730992,731126,731168-731169,731488,731492,731799,731824,731836,731844,731860,732207,732210,732237,732246-732247,732378,7
 32589-732590,732625,732793
+/activemq/camel/trunk:709850,711200,711206,711219-711220,711523,711531,711756,711784,711859,711874,711962,711971,712064,712119,712148,712662,712692,712925,713013,713107,713136,713273,713290,713292,713295,713314,713475,713625,713932,713944,714032,717965,717989,718242,718273,718312-718515,719163-719184,719334,719339,719524,719662,719848,719851,719855,719864,719978-719979,720207,720435-720437,720806,721272,721331,721333-721334,721360,721669,721764,721813,721985,722005,722070,722110,722415,722438,722726,722845,722878,723264,723314,723325-723327,723409,723835,723966,724122,724619,724681,725040,725309-725320,725340,725351,725569-725572,725612,725652-725660,725715,725883,726339,726640-726645,726932,727113,727375,727377,727624,727713,727946,729401,729892,730069,730132,730154,730157,730275,730299,730504-730505,730508,730571,730599,730759,730903,730916,730923,730936,730992,731126,731168-731169,731488,731492,731799,731824,731836,731844,731860,732207,732210,732237,732246-732247,732378,7
 32589-732590,732625,732793,732923

Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Propchange: 
activemq/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/DeadLetterChannelOnRedeliveryTest.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan  8 20:54:36 2009
@@ -0,0 +1 @@
+/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/DeadLetterChannelOnRedeliveryTest.java:732923

Propchange: 
activemq/camel/branches/camel-1.x/camel-core/src/test/java/org/apache/camel/processor/PipelineMEPTest.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan  8 20:54:36 2009
@@ -1 +1 @@
-/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/PipelineMEPTest.java:732589-732590
+/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/PipelineMEPTest.java:732589-732590,732923

Modified: 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java?rev=732926&r1=732925&r2=732926&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfConsumer.java
 Thu Jan  8 20:54:36 2009
@@ -46,15 +46,14 @@
         Bus bus = null;
         this.endpoint = endpoint;
         boolean isWebServiceProvider = false;
-        if (endpoint.getApplicationContext() != null) {
-            SpringBusFactory bf = new 
SpringBusFactory(endpoint.getApplicationContext());
-            bus = bf.createBus();
+        if (endpoint.getApplicationContext() != null) {            
+            bus = endpoint.getCxfEndpointBean().getBus();
             if (CxfEndpointUtils.getSetDefaultBus(endpoint)) {
-                BusFactory.setDefaultBus(bus);
+                BusFactory.setThreadDefaultBus(bus);
             }
         } else {
             // now we just use the default bus here
-            bus = BusFactory.getDefaultBus();
+            bus = BusFactory.getThreadDefaultBus();
         }
         ServerFactoryBean svrBean = null;
 

Modified: 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java?rev=732926&r1=732925&r2=732926&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
 Thu Jan  8 20:54:36 2009
@@ -100,15 +100,14 @@
     // If cfb is null, we will try to find the right cfb to use.
     private Client createClientFromClientFactoryBean(ClientProxyFactoryBean 
cfb) throws CamelException {
         Bus bus = null;
-        if (endpoint.getApplicationContext() != null) {
-            SpringBusFactory bf = new 
SpringBusFactory(endpoint.getApplicationContext());
-            bus = bf.createBus();
+        if (endpoint.getApplicationContext() != null) {            
+            bus = endpoint.getCxfEndpointBean().getBus();
             if (CxfEndpointUtils.getSetDefaultBus(endpoint)) {
-                BusFactory.setDefaultBus(bus);
+                BusFactory.setThreadDefaultBus(bus);
             }
         } else {
             // now we just use the default bus here
-            bus = BusFactory.getDefaultBus();
+            bus = BusFactory.getThreadDefaultBus();
         }
         if (endpoint.isSpringContextEndpoint()) {
             CxfEndpointBean cxfEndpointBean = endpoint.getCxfEndpointBean();

Modified: 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBean.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBean.java?rev=732926&r1=732925&r2=732926&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBean.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBean.java
 Thu Jan  8 20:54:36 2009
@@ -29,7 +29,11 @@
     private List handlers;
 
     public CxfEndpointBean() {
-        setServiceFactory(new ReflectionServiceFactoryBean());
+        this(new ReflectionServiceFactoryBean());
+    }
+    
+    public CxfEndpointBean(ReflectionServiceFactoryBean factory) {
+        setServiceFactory(factory);
     }
     
     public List getHandlers() {

Modified: 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java?rev=732926&r1=732925&r2=732926&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
 Thu Jan  8 20:54:36 2009
@@ -20,12 +20,19 @@
 import javax.xml.namespace.QName;
 import org.w3c.dom.Element;
 
+import org.apache.cxf.Bus;
+import org.apache.cxf.BusFactory;
+import org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor;
 import org.apache.cxf.common.util.StringUtils;
 import org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser;
+import org.apache.cxf.service.factory.ReflectionServiceFactoryBean;
+import org.springframework.beans.BeansException;
 import org.springframework.beans.factory.BeanDefinitionStoreException;
 import org.springframework.beans.factory.support.AbstractBeanDefinition;
 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
 import org.springframework.beans.factory.xml.ParserContext;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
 
 
 
@@ -88,6 +95,25 @@
     protected boolean hasBusProperty() {
         return true;
     }
+    
+    public static class CxfSpringEndpointBean extends CxfEndpointBean 
implements ApplicationContextAware {
+        public CxfSpringEndpointBean() {
+            super();
+        }
+        
+        public CxfSpringEndpointBean(ReflectionServiceFactoryBean factory) {
+            super(factory);
+        }
+        
+        public void setApplicationContext(ApplicationContext ctx) throws 
BeansException {
+            if (getBus() == null) {
+                Bus bus = BusFactory.getThreadDefaultBus();
+                
BusWiringBeanFactoryPostProcessor.updateBusReferencesInContext(bus, ctx);
+                setBus(bus);
+            }            
+        }
+        
+    }
 
 
 }

Modified: 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java?rev=732926&r1=732925&r2=732926&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java
 Thu Jan  8 20:54:36 2009
@@ -17,9 +17,7 @@
 package org.apache.camel.component.cxf.spring;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 import junit.framework.TestCase;
 import org.apache.camel.CamelContext;
@@ -28,9 +26,6 @@
 import org.apache.camel.ProducerTemplate;
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.component.cxf.CxfConstants;
-import org.apache.cxf.endpoint.Client;
-import org.apache.cxf.message.Message;
-import org.springframework.context.ApplicationContext;
 import org.springframework.context.support.ClassPathXmlApplicationContext;
 
 
@@ -57,7 +52,7 @@
         CamelContext camelContext = (CamelContext) ctx.getBean("camel");
         ProducerTemplate template = camelContext.createProducerTemplate();
         try {
-            Exchange exchange = template.send("cxf:bean:routerEndpoint", new 
Processor() {
+            template.send("cxf:bean:serviceEndpoint", new Processor() {
                 public void process(final Exchange exchange) {
                     final List<String> params = new ArrayList<String>();
                     params.add("hello");
@@ -67,7 +62,8 @@
             });
             fail("should get the exception here");
         } catch (RuntimeCamelException ex) {
-            // do nothing here
+            assertTrue("Should get the fault here ", ex.getCause() instanceof 
org.apache.cxf.interceptor.Fault);
+            // do nothing here;
         }
 
     }


Reply via email to