You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by jo...@apache.org on 2011/06/23 02:27:57 UTC
svn commit: r1138700 - in /camel/trunk/components/camel-cxf/src:
main/java/org/apache/camel/component/cxf/
main/java/org/apache/camel/component/cxf/blueprint/
main/java/org/apache/camel/component/cxf/converter/
main/java/org/apache/camel/component/cxf/...
Author: joed
Date: Thu Jun 23 00:27:56 2011
New Revision: 1138700
URL: http://svn.apache.org/viewvc?rev=1138700&view=rev
Log:
Camel-CXF blueprint, correct classloading.
Also simplifies and makes the loading of the endpoints similar
between spring/blueprint
Many thanks to dkulp.
Fixes for https://issues.apache.org/jira/browse/CAMEL-4139
Tested with karaf-2.2.1-SNAPSHOT and reportincident example.
Modified:
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfBlueprintEndpoint.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpointUtils.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/EndpointDefinitionParser.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/AbstractCxfBeanDefinitionParser.java
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfGreeterPayLoadWithFeatureRouterTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/LoggingInterceptorInMessageModeTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/ServiceClassRefTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/multipart/MultiPartInvokeImpl.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanWithBusTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeansRouterTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsTest.java
camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsWithSpringTest.java
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfBlueprintEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfBlueprintEndpoint.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfBlueprintEndpoint.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfBlueprintEndpoint.java Thu Jun 23 00:27:56 2011
@@ -51,9 +51,9 @@ public class CxfBlueprintEndpoint extend
private BundleContext bundleContext;
private BlueprintCamelContext blueprintCamelContext;
- public CxfBlueprintEndpoint(String address) {
+ public CxfBlueprintEndpoint(String address, BundleContext context) {
super(address);
-
+ bundleContext = context;
}
public List<Handler> getHandlers() {
@@ -71,7 +71,11 @@ public class CxfBlueprintEndpoint extend
BusFactory.setDefaultBus(null);
BusFactory.setThreadDefaultBus(null);
}
-
+
+ public void setServiceClass(String n) throws ClassNotFoundException {
+ setServiceClass(bundleContext.getBundle().loadClass(n));
+ }
+
// Package private methods
// -------------------------------------------------------------------------
@@ -82,7 +86,7 @@ public class CxfBlueprintEndpoint extend
// get service class
if (getDataFormat().equals(DataFormat.POJO)) {
- ObjectHelper.notEmpty(getServiceClass(), CxfConstants.SERVICE_CLASS);
+ ObjectHelper.notNull(getServiceClass(), CxfConstants.SERVICE_CLASS);
}
if (getWsdlURL() == null && getServiceClass() == null) {
@@ -98,7 +102,7 @@ public class CxfBlueprintEndpoint extend
Class<?> cls = null;
if (getServiceClass() != null) {
//Fool CXF classes to load their settings and bindings from the CXF bundle
- cls = bundleContext.getBundle().loadClass(getServiceClass());
+ cls = getServiceClass();
// create client factory bean
ClientProxyFactoryBean factoryBean = createClientFactoryBean(cls);
// setup client factory bean
@@ -129,8 +133,8 @@ public class CxfBlueprintEndpoint extend
Class<?> cls = null;
if (getDataFormat() == DataFormat.POJO || getServiceClass() != null) {
// get service class
- ObjectHelper.notEmpty(getServiceClass(), CxfConstants.SERVICE_CLASS);
- cls = bundleContext.getBundle().loadClass(getServiceClass());
+ ObjectHelper.notNull(getServiceClass(), CxfConstants.SERVICE_CLASS);
+ cls = getServiceClass();
}
// create server factory bean
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfComponent.java Thu Jun 23 00:27:56 2011
@@ -16,7 +16,6 @@
*/
package org.apache.camel.component.cxf;
-import java.util.HashMap;
import java.util.Map;
import org.apache.camel.CamelContext;
@@ -56,29 +55,14 @@ public class CxfComponent extends Header
beanId = beanId.substring(2);
}
- Object bean = CamelContextHelper.mandatoryLookup(getCamelContext(), beanId, Object.class);
- if (bean instanceof CxfEndpointBean) {
- CxfEndpointBean configBean = (CxfEndpointBean) bean;
- result = new CxfSpringEndpoint(this, configBean);
-
- // Apply Spring bean properties (including # notation referenced bean). Note that the
- // Spring bean properties values can be overridden by property defined in URI query.
- // The super class (DefaultComponent) will invoke "setProperties" after this method
- // with to apply properties defined by URI query.
- if (configBean.getProperties() != null) {
- Map<String, Object> copy = new HashMap<String, Object>();
- copy.putAll(configBean.getProperties());
- setProperties(result, copy);
- result.setMtomEnabled(Boolean.valueOf((String) copy.get(Message.MTOM_ENABLED)));
- }
- } else if (bean instanceof CxfBlueprintEndpoint) {
- result = (CxfBlueprintEndpoint) bean;
- }
+ result = CamelContextHelper.mandatoryLookup(getCamelContext(), beanId, CxfEndpoint.class);
} else {
// endpoint URI does not specify a bean
result = new CxfEndpoint(remaining, this);
}
-
+ if (result.getCamelContext() == null) {
+ result.setCamelContext(getCamelContext());
+ }
setEndpointHeaderFilterStrategy(result);
setProperties(result, parameters);
@@ -86,8 +70,10 @@ public class CxfComponent extends Header
Map<String, Object> properties = IntrospectionSupport.extractProperties(parameters, "properties.");
if (properties != null) {
result.setProperties(properties);
+ }
+ if (result.getProperties() != null) {
// set the properties of MTOM
- result.setMtomEnabled(Boolean.valueOf((String) properties.get(Message.MTOM_ENABLED)));
+ result.setMtomEnabled(Boolean.valueOf((String) result.getProperties().get(Message.MTOM_ENABLED)));
}
return result;
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpoint.java Thu Jun 23 00:27:56 2011
@@ -17,11 +17,16 @@
package org.apache.camel.component.cxf;
import java.lang.reflect.Proxy;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicBoolean;
+
+import javax.xml.namespace.QName;
import javax.xml.ws.WebServiceProvider;
+import javax.xml.ws.handler.Handler;
+
import org.w3c.dom.Element;
import org.apache.camel.CamelContext;
@@ -39,20 +44,24 @@ import org.apache.camel.impl.Synchronous
import org.apache.camel.spi.HeaderFilterStrategy;
import org.apache.camel.spi.HeaderFilterStrategyAware;
import org.apache.camel.spring.SpringCamelContext;
+import org.apache.camel.util.EndpointHelper;
import org.apache.camel.util.ObjectHelper;
import org.apache.cxf.Bus;
import org.apache.cxf.BusFactory;
import org.apache.cxf.common.classloader.ClassLoaderUtils;
import org.apache.cxf.common.util.ClassHelper;
+import org.apache.cxf.common.util.ModCountCopyOnWriteArrayList;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.endpoint.ClientImpl;
import org.apache.cxf.endpoint.Endpoint;
+import org.apache.cxf.feature.AbstractFeature;
import org.apache.cxf.feature.LoggingFeature;
import org.apache.cxf.frontend.ClientFactoryBean;
import org.apache.cxf.frontend.ClientProxy;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.headers.Header;
+import org.apache.cxf.interceptor.Interceptor;
import org.apache.cxf.jaxws.JaxWsClientFactoryBean;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
@@ -75,20 +84,21 @@ public class CxfEndpoint extends Default
private static final Logger LOG = LoggerFactory.getLogger(CxfEndpoint.class);
+ protected Bus bus;
+
private String wsdlURL;
- private String serviceClass;
- private String portName;
- private String serviceName;
+ private Class<?> serviceClass;
+ private QName portName;
+ private QName serviceName;
private String defaultOperationName;
private String defaultOperationNamespace;
- private DataFormat dataFormat = DataFormat.POJO;
// This is for invoking the CXFClient with wrapped parameters of unwrapped parameters
private boolean isWrapped;
// This is for marshal or unmarshal message with the document-literal wrapped or unwrapped style
private Boolean wrappedStyle;
+ private DataFormat dataFormat = DataFormat.POJO;
private String publishedEndpointUrl;
private boolean inOut = true;
- private Bus bus;
private CxfBinding cxfBinding;
private HeaderFilterStrategy headerFilterStrategy;
private AtomicBoolean getBusHasBeenCalled = new AtomicBoolean(false);
@@ -98,6 +108,23 @@ public class CxfEndpoint extends Default
private boolean mtomEnabled;
private boolean skipPayloadMessagePartCheck;
private Map<String, Object> properties;
+ private List<Interceptor<? extends Message>> in
+ = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
+ private List<Interceptor<? extends Message>> out
+ = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
+ private List<Interceptor<? extends Message>> outFault
+ = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
+ private List<Interceptor<? extends Message>> inFault
+ = new ModCountCopyOnWriteArrayList<Interceptor<? extends Message>>();
+ private List<AbstractFeature> features
+ = new ModCountCopyOnWriteArrayList<AbstractFeature>();
+
+ private List<Handler> handlers;
+ private List<String> schemaLocations = new ArrayList<String>();
+ private String transportId;
+ private String bindingId;
+
+
public CxfEndpoint(String remaining, CxfComponent cxfComponent) {
super(remaining, cxfComponent);
@@ -113,6 +140,9 @@ public class CxfEndpoint extends Default
super(remaining);
setAddress(remaining);
}
+ public CxfEndpoint() {
+ super();
+ }
// This method is for CxfComponent setting the EndpointUri
protected void updateEndpointUri(String endpointUri) {
@@ -147,6 +177,19 @@ public class CxfEndpoint extends Default
// service class
sfb.setServiceClass(cls);
+ sfb.setInInterceptors(in);
+ sfb.setOutInterceptors(out);
+ sfb.setOutFaultInterceptors(outFault);
+ sfb.setInFaultInterceptors(inFault);
+ sfb.setFeatures(features);
+ sfb.setSchemaLocations(schemaLocations);
+
+ if (sfb instanceof JaxWsServerFactoryBean && handlers != null) {
+ ((JaxWsServerFactoryBean)sfb).setHandlers(handlers);
+ }
+ sfb.setTransportId(transportId);
+ sfb.setBindingId(bindingId);
+
// wsdl url
if (getWsdlURL() != null) {
sfb.setWsdlURL(getWsdlURL());
@@ -154,12 +197,12 @@ public class CxfEndpoint extends Default
// service name qname
if (getServiceName() != null) {
- sfb.setServiceName(CxfEndpointUtils.getQName(getServiceName()));
+ sfb.setServiceName(getServiceName());
}
// port qname
if (getPortName() != null) {
- sfb.setEndpointName(CxfEndpointUtils.getQName(getPortName()));
+ sfb.setEndpointName(getPortName());
}
// apply feature here
@@ -261,6 +304,18 @@ public class CxfEndpoint extends Default
// service class
factoryBean.setServiceClass(cls);
+ factoryBean.setInInterceptors(in);
+ factoryBean.setOutInterceptors(out);
+ factoryBean.setOutFaultInterceptors(outFault);
+ factoryBean.setInFaultInterceptors(inFault);
+ factoryBean.setFeatures(features);
+
+ if (factoryBean instanceof JaxWsProxyFactoryBean && handlers != null) {
+ ((JaxWsProxyFactoryBean)factoryBean).setHandlers(handlers);
+ }
+ factoryBean.setTransportId(transportId);
+ factoryBean.setBindingId(bindingId);
+
// address
factoryBean.setAddress(getAddress());
@@ -271,12 +326,12 @@ public class CxfEndpoint extends Default
// service name qname
if (getServiceName() != null) {
- factoryBean.setServiceName(CxfEndpointUtils.getQName(getServiceName()));
+ factoryBean.setServiceName(getServiceName());
}
// port name qname
if (getPortName() != null) {
- factoryBean.setEndpointName(CxfEndpointUtils.getQName(getPortName()));
+ factoryBean.setEndpointName(getPortName());
}
// apply feature here
@@ -311,6 +366,14 @@ public class CxfEndpoint extends Default
}
protected void setupClientFactoryBean(ClientFactoryBean factoryBean) {
+ factoryBean.setInInterceptors(in);
+ factoryBean.setOutInterceptors(out);
+ factoryBean.setOutFaultInterceptors(outFault);
+ factoryBean.setInFaultInterceptors(inFault);
+ factoryBean.setFeatures(features);
+ factoryBean.setTransportId(transportId);
+ factoryBean.setBindingId(bindingId);
+
// address
factoryBean.setAddress(getAddress());
@@ -321,12 +384,12 @@ public class CxfEndpoint extends Default
// service name qname
if (getServiceName() != null) {
- factoryBean.setServiceName(CxfEndpointUtils.getQName(getServiceName()));
+ factoryBean.setServiceName(getServiceName());
}
// port name qname
if (getPortName() != null) {
- factoryBean.setEndpointName(CxfEndpointUtils.getQName(getPortName()));
+ factoryBean.setEndpointName(getPortName());
}
// apply feature here
@@ -359,7 +422,7 @@ public class CxfEndpoint extends Default
// get service class
if (getDataFormat().equals(DataFormat.POJO)) {
- ObjectHelper.notEmpty(getServiceClass(), CxfConstants.SERVICE_CLASS);
+ ObjectHelper.notNull(getServiceClass(), CxfConstants.SERVICE_CLASS);
}
if (getWsdlURL() == null && getServiceClass() == null) {
@@ -374,7 +437,7 @@ public class CxfEndpoint extends Default
Class<?> cls = null;
if (getServiceClass() != null) {
- cls = ClassLoaderUtils.loadClass(getServiceClass(), getClass());
+ cls = getServiceClass();
// create client factory bean
ClientProxyFactoryBean factoryBean = createClientFactoryBean(cls);
// setup client factory bean
@@ -405,8 +468,8 @@ public class CxfEndpoint extends Default
Class<?> cls = null;
if (getDataFormat() == DataFormat.POJO || getServiceClass() != null) {
// get service class
- ObjectHelper.notEmpty(getServiceClass(), CxfConstants.SERVICE_CLASS);
- cls = ClassLoaderUtils.loadClass(getServiceClass(), getClass());
+ ObjectHelper.notNull(getServiceClass(), CxfConstants.SERVICE_CLASS);
+ cls = getServiceClass();
}
// create server factory bean
@@ -456,31 +519,38 @@ public class CxfEndpoint extends Default
wsdlURL = url;
}
- public String getServiceClass() {
+ public Class<?> getServiceClass() {
return serviceClass;
}
- public void setServiceClass(String className) {
- serviceClass = className;
+ public void setServiceClass(Class<?> cls) {
+ serviceClass = cls;
}
public void setServiceClass(Object instance) {
- serviceClass = ClassHelper.getRealClass(instance).getName();
+ serviceClass = ClassHelper.getRealClass(instance);
}
-
- public void setServiceName(String service) {
+
+ public void setServiceClass(String type) throws ClassNotFoundException {
+ serviceClass = ClassLoaderUtils.loadClass(type, getClass());
+ }
+
+ public void setServiceName(QName service) {
serviceName = service;
}
- public String getServiceName() {
+ public QName getServiceName() {
return serviceName;
}
- public String getPortName() {
+ public QName getPortName() {
return portName;
}
- public void setPortName(String port) {
+ public void setPortName(QName port) {
+ portName = port;
+ }
+ public void setEndpointName(QName port) {
portName = port;
}
@@ -587,9 +657,41 @@ public class CxfEndpoint extends Default
public Map<String, Object> getProperties() {
return properties;
}
+
+ public void setCamelContext(CamelContext c) {
+ super.setCamelContext(c);
+ if (this.properties != null) {
+ try {
+ EndpointHelper.setReferenceProperties(getCamelContext(),
+ this,
+ this.properties);
+ EndpointHelper.setProperties(getCamelContext(),
+ this,
+ this.properties);
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
+ }
public void setProperties(Map<String, Object> properties) {
- this.properties = properties;
+ if (this.properties == null) {
+ this.properties = properties;
+ } else {
+ this.properties.putAll(properties);
+ }
+ if (getCamelContext() != null && this.properties != null) {
+ try {
+ EndpointHelper.setReferenceProperties(getCamelContext(),
+ this,
+ this.properties);
+ EndpointHelper.setProperties(getCamelContext(),
+ this,
+ this.properties);
+ } catch (Throwable e) {
+ e.printStackTrace();
+ }
+ }
}
@Override
@@ -611,6 +713,7 @@ public class CxfEndpoint extends Default
}
public void setAddress(String address) {
+ super.setEndpointUri(address);
this.address = address;
}
@@ -681,4 +784,75 @@ public class CxfEndpoint extends Default
message.remove(DataFormat.class);
}
}
+
+
+ public List<Interceptor<? extends Message>> getOutFaultInterceptors() {
+ return outFault;
+ }
+
+ public List<Interceptor<? extends Message>> getInFaultInterceptors() {
+ return inFault;
+ }
+
+ public List<Interceptor<? extends Message>> getInInterceptors() {
+ return in;
+ }
+
+ public List<Interceptor<? extends Message>> getOutInterceptors() {
+ return out;
+ }
+
+ public void setInInterceptors(List<Interceptor<? extends Message>> interceptors) {
+ in = interceptors;
+ }
+
+ public void setInFaultInterceptors(List<Interceptor<? extends Message>> interceptors) {
+ inFault = interceptors;
+ }
+
+ public void setOutInterceptors(List<Interceptor<? extends Message>> interceptors) {
+ out = interceptors;
+ }
+
+ public void setOutFaultInterceptors(List<Interceptor<? extends Message>> interceptors) {
+ outFault = interceptors;
+ }
+
+ public void setFeatures(List<AbstractFeature> f) {
+ features = f;
+ }
+ public List<AbstractFeature> getFeatures() {
+ return features;
+ }
+
+ public void setHandlers(List<Handler> h) {
+ handlers = h;
+ }
+ public List<Handler> getHandlers() {
+ return handlers;
+ }
+
+ public void setSchemaLocations(List<String> sc) {
+ schemaLocations = sc;
+ }
+ public List<String> getSchemaLocations() {
+ return schemaLocations;
+ }
+
+ public String getTransportId() {
+ return transportId;
+ }
+
+ public void setTransportId(String transportId) {
+ this.transportId = transportId;
+ }
+
+ public String getBindingId() {
+ return bindingId;
+ }
+
+ public void setBindingId(String bindingId) {
+ this.bindingId = bindingId;
+ }
+
}
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpointUtils.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpointUtils.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpointUtils.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfEndpointUtils.java Thu Jun 23 00:27:56 2011
@@ -56,7 +56,7 @@ public final class CxfEndpointUtils {
// only used by test currently
public static QName getPortName(final CxfEndpoint endpoint) {
if (endpoint.getPortName() != null) {
- return getQName(endpoint.getPortName());
+ return endpoint.getPortName();
} else {
String portLocalName = getCxfEndpointPropertyValue((CxfSpringEndpoint)endpoint, CxfConstants.PORT_LOCALNAME);
String portNamespace = getCxfEndpointPropertyValue((CxfSpringEndpoint)endpoint, CxfConstants.PORT_NAMESPACE);
@@ -71,7 +71,7 @@ public final class CxfEndpointUtils {
// only used by test currently
public static QName getServiceName(final CxfEndpoint endpoint) {
if (endpoint.getServiceName() != null) {
- return getQName(endpoint.getServiceName());
+ return endpoint.getServiceName();
} else {
String serviceLocalName = getCxfEndpointPropertyValue((CxfSpringEndpoint)endpoint, CxfConstants.SERVICE_LOCALNAME);
String serviceNamespace = getCxfEndpointPropertyValue((CxfSpringEndpoint)endpoint, CxfConstants.SERVICE_NAMESPACE);
@@ -149,12 +149,7 @@ public final class CxfEndpointUtils {
// only used by test currently
public static String getCxfEndpointPropertyValue(CxfSpringEndpoint endpoint, String property) {
- String result = null;
- CxfEndpointBean cxfEndpointBean = endpoint.getBean();
- if (cxfEndpointBean != null && cxfEndpointBean.getProperties() != null) {
- result = (String) cxfEndpointBean.getProperties().get(property);
- }
- return result;
+ return (String)endpoint.getProperties().get(property);
}
/**
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java Thu Jun 23 00:27:56 2011
@@ -25,6 +25,9 @@ import org.apache.camel.component.cxf.co
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.util.ObjectHelper;
import org.apache.cxf.Bus;
+import org.apache.cxf.BusFactory;
+import org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor;
+import org.apache.cxf.bus.spring.SpringBusFactory;
import org.apache.cxf.common.classloader.ClassLoaderUtils;
import org.apache.cxf.configuration.spring.ConfigurerImpl;
import org.apache.cxf.endpoint.Client;
@@ -33,6 +36,10 @@ import org.apache.cxf.frontend.ClientPro
import org.apache.cxf.frontend.ClientProxyFactoryBean;
import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
+import org.apache.cxf.version.Version;
+import org.springframework.beans.BeansException;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ConfigurableApplicationContext;
/**
@@ -40,35 +47,24 @@ import org.springframework.context.Confi
*
* @version
*/
-public class CxfSpringEndpoint extends CxfEndpoint {
+public class CxfSpringEndpoint extends CxfEndpoint implements ApplicationContextAware {
- private CxfEndpointBean bean;
private String beanId;
private ConfigurerImpl configurer;
- private String serviceNamespace;
- private String serviceLocalName;
- private String endpointLocalName;
- private String endpointNamespace;
-
- public CxfSpringEndpoint(CamelContext context, CxfEndpointBean bean) throws Exception {
- super(bean.getAddress(), context);
- init(bean);
+ private ApplicationContext applicationContext;
+
+ public CxfSpringEndpoint(CamelContext context, String address) throws Exception {
+ super(address, context);
}
- public CxfSpringEndpoint(CxfComponent component, CxfEndpointBean bean) throws Exception {
- super(bean.getAddress(), component);
- init(bean);
+ public CxfSpringEndpoint(CxfComponent component, String address) throws Exception {
+ super(address, component);
}
-
- // override the
- private void init(CxfEndpointBean bean) throws Exception {
- this.bean = bean;
- // create configurer
- configurer = new ConfigurerImpl(((SpringCamelContext)getCamelContext())
- .getApplicationContext());
+
+ public CxfSpringEndpoint() {
+ super();
}
-
/**
*
* A help to get the service class. The serviceClass classname in URI
@@ -80,20 +76,11 @@ public class CxfSpringEndpoint extends C
Class<?> answer = null;
if (getServiceClass() != null) {
// classname is specified in URI which overrides the bean properties
- answer = ClassLoaderUtils.loadClass(getServiceClass(), getClass());
- } else {
- answer = bean.getServiceClass();
+ answer = getServiceClass();
}
return answer;
}
- protected Bus doGetBus() {
- return bean.getBus();
- }
-
- public CxfEndpointBean getBean() {
- return bean;
- }
// Package private methods
// -------------------------------------------------------------------------
@@ -250,40 +237,93 @@ public class CxfSpringEndpoint extends C
}
public void setServiceNamespace(String serviceNamespace) {
- this.serviceNamespace = serviceNamespace;
+ QName qn = getServiceName();
+ if (qn == null) {
+ setServiceName(new QName(serviceNamespace, "local"));
+ } else {
+ setServiceName(new QName(serviceNamespace, qn.getLocalPart()));
+ }
}
public String getServiceNamespace() {
- return serviceNamespace;
+ QName qn = getServiceName();
+ if (qn == null) {
+ return null;
+ }
+ return qn.getNamespaceURI();
}
public void setServiceLocalName(String serviceLocalName) {
- this.serviceLocalName = serviceLocalName;
+ QName qn = getServiceName();
+ if (qn == null) {
+ setServiceName(new QName("", serviceLocalName));
+ } else {
+ setServiceName(new QName(qn.getNamespaceURI(), serviceLocalName));
+ }
}
public String getServiceLocalName() {
- return serviceLocalName;
+ QName qn = getServiceName();
+ if (qn == null) {
+ return null;
+ }
+ return qn.getLocalPart();
}
public String getEndpointLocalName() {
- return endpointLocalName;
+ QName qn = getPortName();
+ if (qn == null) {
+ return null;
+ }
+ return qn.getLocalPart();
}
public void setEndpointLocalName(String endpointLocalName) {
- this.endpointLocalName = endpointLocalName;
+ QName qn = getPortName();
+ if (qn == null) {
+ setPortName(new QName("", endpointLocalName));
+ } else {
+ setPortName(new QName(qn.getNamespaceURI(), endpointLocalName));
+ }
}
public void setEndpointNamespace(String endpointNamespace) {
- this.endpointNamespace = endpointNamespace;
+ QName qn = getPortName();
+ if (qn == null) {
+ setPortName(new QName(endpointNamespace, "local"));
+ } else {
+ setPortName(new QName(endpointNamespace, qn.getLocalPart()));
+ }
}
public String getEndpointNamespace() {
- return endpointNamespace;
+ QName qn = getPortName();
+ if (qn == null) {
+ return null;
+ }
+ return qn.getNamespaceURI();
}
- @Override
- public String getWsdlURL() {
- return bean.getWsdlURL();
+
+ @SuppressWarnings("deprecation")
+ public void setApplicationContext(ApplicationContext ctx) throws BeansException {
+ applicationContext = ctx;
+ configurer = new ConfigurerImpl(applicationContext);
+
+ if (bus == null) {
+ if (Version.getCurrentVersion().startsWith("2.3")) {
+ // Don't relate on the DefaultBus
+ BusFactory factory = new SpringBusFactory(ctx);
+ bus = factory.createBus();
+ BusWiringBeanFactoryPostProcessor.updateBusReferencesInContext(bus, ctx);
+ } else {
+ bus = BusWiringBeanFactoryPostProcessor.addDefaultBus(ctx);
+ }
+ }
+ }
+
+ public ApplicationContext getApplicationContext() {
+ return applicationContext;
}
}
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/EndpointDefinitionParser.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/EndpointDefinitionParser.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/EndpointDefinitionParser.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/EndpointDefinitionParser.java Thu Jun 23 00:27:56 2011
@@ -30,6 +30,7 @@ import org.apache.camel.component.cxf.Cx
import org.apache.cxf.common.util.StringUtils;
import org.apache.cxf.configuration.blueprint.AbstractBPBeanDefinitionParser;
import org.apache.cxf.helpers.DOMUtils;
+import org.osgi.framework.BundleContext;
import org.osgi.service.blueprint.reflect.Metadata;
public class EndpointDefinitionParser extends AbstractBPBeanDefinitionParser {
@@ -113,6 +114,8 @@ public class EndpointDefinitionParser ex
endpointConfig.addProperty("bus", getBusRef(context, bus));
endpointConfig.setDestroyMethod("destroy");
endpointConfig.addArgument(AbstractBPBeanDefinitionParser.createValue(context, address), String.class.getName(), 0);
+ endpointConfig.addArgument(createRef(context, "blueprintBundleContext"),
+ BundleContext.class.getName(), 1);
return endpointConfig;
}
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java Thu Jun 23 00:27:56 2011
@@ -25,6 +25,7 @@ import java.util.List;
import java.util.Map;
import javax.ws.rs.core.Response;
+import javax.xml.namespace.QName;
import javax.xml.soap.SOAPMessage;
import org.apache.camel.Converter;
@@ -35,7 +36,6 @@ import org.apache.camel.TypeConverter;
import org.apache.camel.component.cxf.CxfEndpoint;
import org.apache.camel.component.cxf.CxfSpringEndpoint;
import org.apache.camel.component.cxf.DataFormat;
-import org.apache.camel.component.cxf.spring.CxfSpringEndpointBean;
import org.apache.camel.spi.TypeConverterRegistry;
import org.apache.camel.spring.SpringCamelContext;
import org.apache.camel.util.EndpointHelper;
@@ -84,6 +84,11 @@ public final class CxfConverter {
}
@Converter
+ public static QName toQName(String qname) {
+ return QName.valueOf(qname);
+ }
+
+ @Converter
public static Object[] toArray(Object object) {
if (object instanceof Collection) {
return ((Collection)object).toArray();
@@ -111,26 +116,6 @@ public final class CxfConverter {
}
@Converter
- public static Endpoint toEndpoint(final CxfSpringEndpointBean endpointBean) throws Exception {
- if (endpointBean == null) {
- throw new IllegalArgumentException("The CxfEndpoint instance is null");
- }
- // CamelContext
- SpringCamelContext context = SpringCamelContext.springCamelContext(endpointBean.getApplicationContext());
- // The beanId will be set from endpointBean's property
- CxfEndpoint answer = new CxfSpringEndpoint(context, endpointBean);
- // check the properties map
- if (endpointBean.getProperties() != null) {
- Map<String, Object> copy = new HashMap<String, Object>();
- copy.putAll(endpointBean.getProperties());
- EndpointHelper.setReferenceProperties(context, answer, copy);
- EndpointHelper.setProperties(context, answer, copy);
- answer.setMtomEnabled(Boolean.valueOf((String)copy.get(Message.MTOM_ENABLED)));
- }
- return answer;
- }
-
- @Converter
public static DataFormat toDataFormat(final String name) {
return DataFormat.valueOf(name.toUpperCase());
}
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/AbstractCxfBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/AbstractCxfBeanDefinitionParser.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/AbstractCxfBeanDefinitionParser.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/AbstractCxfBeanDefinitionParser.java Thu Jun 23 00:27:56 2011
@@ -49,7 +49,6 @@ public abstract class AbstractCxfBeanDef
bean.addPropertyValue(propertyName, val);
}
}
-
}
@Override
Modified: camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java (original)
+++ camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java Thu Jun 23 00:27:56 2011
@@ -22,6 +22,7 @@ import java.util.Map;
import javax.xml.namespace.QName;
import org.w3c.dom.Element;
+import org.apache.camel.component.cxf.CxfSpringEndpoint;
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
import org.springframework.beans.factory.xml.ParserContext;
@@ -30,7 +31,7 @@ public class CxfEndpointBeanDefinitionPa
@Override
protected Class<?> getBeanClass(Element arg0) {
- return CxfSpringEndpointBean.class;
+ return CxfSpringEndpoint.class;
}
@Override
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfGreeterPayLoadWithFeatureRouterTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfGreeterPayLoadWithFeatureRouterTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfGreeterPayLoadWithFeatureRouterTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/CxfGreeterPayLoadWithFeatureRouterTest.java Thu Jun 23 00:27:56 2011
@@ -36,7 +36,7 @@ public class CxfGreeterPayLoadWithFeatur
CxfEndpoint endpoint = getMandatoryEndpoint("cxf:bean:serviceEndpoint?dataFormat=PAYLOAD",
CxfEndpoint.class);
- assertEquals(TestCxfFeature.class, ((CxfSpringEndpoint)endpoint).getBean()
+ assertEquals(TestCxfFeature.class, ((CxfSpringEndpoint)endpoint)
.getFeatures().get(0).getClass());
assertEquals(DataFormat.PAYLOAD, endpoint.getDataFormat());
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/LoggingInterceptorInMessageModeTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/LoggingInterceptorInMessageModeTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/LoggingInterceptorInMessageModeTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/LoggingInterceptorInMessageModeTest.java Thu Jun 23 00:27:56 2011
@@ -68,7 +68,7 @@ public class LoggingInterceptorInMessage
LoggingOutInterceptor logInterceptor = null;
for (Interceptor<?> interceptor
- : context.getEndpoint("cxf:bean:serviceEndpoint", CxfSpringEndpoint.class).getBean()
+ : context.getEndpoint("cxf:bean:serviceEndpoint", CxfSpringEndpoint.class)
.getOutInterceptors()) {
if (interceptor instanceof LoggingOutInterceptor) {
logInterceptor = LoggingOutInterceptor.class.cast(interceptor);
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/ServiceClassRefTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/ServiceClassRefTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/ServiceClassRefTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/ServiceClassRefTest.java Thu Jun 23 00:27:56 2011
@@ -39,7 +39,8 @@ public class ServiceClassRefTest extends
public void testServiceClassNameCreatedByRefNotation() throws Exception {
// verify the '#' notation works
CxfEndpoint endpoint = context.getEndpoint("cxf:bean:fromEndpoint", CxfEndpoint.class);
- assertEquals("org.apache.camel.component.cxf.HelloServiceImpl", endpoint.getServiceClass());
+ assertEquals("org.apache.camel.component.cxf.HelloServiceImpl",
+ endpoint.getServiceClass().getName());
assertEquals(DataFormat.POJO, endpoint.getDataFormat());
// verify values in bean properties are ok
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/multipart/MultiPartInvokeImpl.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/multipart/MultiPartInvokeImpl.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/multipart/MultiPartInvokeImpl.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/multipart/MultiPartInvokeImpl.java Thu Jun 23 00:27:56 2011
@@ -38,8 +38,8 @@ public class MultiPartInvokeImpl impleme
@Override
public void foo(InE in, InE in1, Holder<InE> out, Holder<InE> out1) {
LOG.info("Executing operation foo");
- System.out.println(in);
- System.out.println(in1);
+ //System.out.println(in);
+ //System.out.println(in1);
try {
InE outValue = in;
out.value = outValue;
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanTest.java Thu Jun 23 00:27:56 2011
@@ -16,7 +16,7 @@
*/
package org.apache.camel.component.cxf.spring;
-import org.apache.camel.component.cxf.CxfEndpointBean;
+import org.apache.camel.component.cxf.CxfEndpoint;
import org.junit.Test;
public class CxfEndpointBeanTest extends AbstractSpringBeanTestSupport {
@@ -27,9 +27,10 @@ public class CxfEndpointBeanTest extends
@Test
public void testCxfEndpointBeanDefinitionParser() {
- CxfEndpointBean routerEndpoint = (CxfEndpointBean)ctx.getBean("routerEndpoint");
+ CxfEndpoint routerEndpoint = (CxfEndpoint)ctx.getBean("routerEndpoint");
assertEquals("Got the wrong endpoint address", "http://localhost:9000/router", routerEndpoint.getAddress());
- assertEquals("Got the wrong endpont service class", "org.apache.camel.component.cxf.HelloService", routerEndpoint.getServiceClass().getCanonicalName());
+ assertEquals("Got the wrong endpont service class", "org.apache.camel.component.cxf.HelloService",
+ routerEndpoint.getServiceClass().getName());
assertEquals("Got the wrong handlers size", 1, routerEndpoint.getHandlers().size());
assertEquals("Got the wrong schemalocations size", 1, routerEndpoint.getSchemaLocations().size());
assertEquals("Got the wrong schemalocation", "classpath:wsdl/Message.xsd", routerEndpoint.getSchemaLocations().get(0));
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanWithBusTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanWithBusTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanWithBusTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanWithBusTest.java Thu Jun 23 00:27:56 2011
@@ -18,7 +18,6 @@ package org.apache.camel.component.cxf.s
import org.apache.camel.CamelContext;
import org.apache.camel.component.cxf.CxfEndpoint;
-import org.apache.camel.component.cxf.CxfEndpointBean;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.junit.Before;
import org.junit.Test;
@@ -50,9 +49,11 @@ public class CxfEndpointBeanWithBusTest
@Test
public void testCxfEndpointBeanDefinitionParser() {
- CxfEndpointBean routerEndpoint = (CxfEndpointBean)ctx.getBean("routerEndpoint");
+ CxfEndpoint routerEndpoint = (CxfEndpoint)ctx.getBean("routerEndpoint");
assertEquals("Got the wrong endpoint address", "http://localhost:9000/router", routerEndpoint.getAddress());
- assertEquals("Got the wrong endpont service class", "org.apache.camel.component.cxf.HelloService", routerEndpoint.getServiceClass().getCanonicalName());
+ assertEquals("Got the wrong endpont service class",
+ "org.apache.camel.component.cxf.HelloService",
+ routerEndpoint.getServiceClass().getName());
}
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeansRouterTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeansRouterTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeansRouterTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/spring/CxfEndpointBeansRouterTest.java Thu Jun 23 00:27:56 2011
@@ -23,7 +23,7 @@ import org.apache.camel.CamelContext;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
import org.apache.camel.ProducerTemplate;
-import org.apache.camel.component.cxf.CxfEndpointBean;
+import org.apache.camel.component.cxf.CxfEndpoint;
import org.apache.camel.component.cxf.common.message.CxfConstants;
import org.junit.Test;
@@ -35,9 +35,11 @@ public class CxfEndpointBeansRouterTest
@Test
public void testCxfEndpointBeanDefinitionParser() {
- CxfEndpointBean routerEndpoint = (CxfEndpointBean)ctx.getBean("routerEndpoint");
+ CxfEndpoint routerEndpoint = (CxfEndpoint)ctx.getBean("routerEndpoint");
assertEquals("Got the wrong endpoint address", routerEndpoint.getAddress(), "http://localhost:9000/router");
- assertEquals("Got the wrong endpont service class", routerEndpoint.getServiceClass().getCanonicalName(), "org.apache.camel.component.cxf.HelloService");
+ assertEquals("Got the wrong endpont service class",
+ "org.apache.camel.component.cxf.HelloService",
+ routerEndpoint.getServiceClass().getName());
}
@Test
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsTest.java Thu Jun 23 00:27:56 2011
@@ -67,7 +67,7 @@ public class CxfEndpointUtilsTest extend
@Test
public void testGetProperties() throws Exception {
CxfEndpoint endpoint = createEndpoint(getEndpointURI());
- QName service = CxfEndpointUtils.getQName(endpoint.getServiceName());
+ QName service = endpoint.getServiceName();
assertEquals("We should get the right service name", service, SERVICE_NAME);
}
@@ -80,13 +80,7 @@ public class CxfEndpointUtilsTest extend
@Test
public void testCheckServiceClassWithTheEndpoint() throws Exception {
CxfEndpoint endpoint = createEndpoint(getNoServiceClassURI());
- try {
- CxfEndpointUtils.checkServiceClassName(endpoint.getServiceClass());
- fail("Should get a CamelException here");
- } catch (CamelException exception) {
- assertNotNull("Should get a CamelException here", exception);
- assertEquals("serviceClass is required for CXF endpoint configuration", exception.getMessage());
- }
+ assertNull(endpoint.getServiceClass());
}
@Test
Modified: camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsWithSpringTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsWithSpringTest.java?rev=1138700&r1=1138699&r2=1138700&view=diff
==============================================================================
--- camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsWithSpringTest.java (original)
+++ camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/util/CxfEndpointUtilsWithSpringTest.java Thu Jun 23 00:27:56 2011
@@ -67,7 +67,8 @@ public class CxfEndpointUtilsWithSpringT
@Test
public void testGetServiceClass() throws Exception {
CxfEndpoint endpoint = createEndpoint("cxf:bean:helloServiceEndpoint?serviceClass=#helloServiceImpl");
- assertEquals("org.apache.camel.component.cxf.HelloServiceImpl", endpoint.getServiceClass());
+ assertEquals("org.apache.camel.component.cxf.HelloServiceImpl",
+ endpoint.getServiceClass().getName());
}
@Test
@@ -79,15 +80,15 @@ public class CxfEndpointUtilsWithSpringT
@Test
public void testGetProperties() throws Exception {
CxfSpringEndpoint endpoint = (CxfSpringEndpoint)createEndpoint(getEndpointURI());
- QName service = endpoint.getBean().getServiceName();
- assertEquals("We should get the right service name", service, SERVICE_NAME);
+ QName service = endpoint.getServiceName();
+ assertEquals("We should get the right service name", SERVICE_NAME, service);
assertEquals("The cxf endpoint's DataFromat should be MESSAGE", DataFormat.MESSAGE, endpoint.getDataFormat());
endpoint = (CxfSpringEndpoint)createEndpoint("cxf:bean:testPropertiesEndpoint");
service = CxfEndpointUtils.getServiceName(endpoint);
- assertEquals("We should get the right service name", service, SERVICE_NAME);
+ assertEquals("We should get the right service name", SERVICE_NAME, service);
QName port = CxfEndpointUtils.getPortName(endpoint);
- assertEquals("We should get the right endpoint name", port, PORT_NAME);
+ assertEquals("We should get the right endpoint name", PORT_NAME, port);
}
@Test