[ https://issues.apache.org/activemq/browse/CAMEL-2311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=58205#action_58205 ]
Willem Jiang commented on CAMEL-2311: ------------------------------------- You can configure the feature like this {code} <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cxf="http://camel.apache.org/schema/cxf" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd "> <cxf:cxfEndpoint id="routerEndpoint" address="http://localhost:9000/router" serviceClass="org.apache.camel.component.cxf.HelloService"> <cxf:features> <ref bean="loggingOutInterceptor"/> </cxf:features> </cxf:cxfEndpoint> <bean id="myFeature" class="org.apache.cxf.feature.MyFeature" /> <cxf:cxfEndpoint id="serviceEndpoint" address="http://localhost:9002/helloworld" serviceClass="org.apache.camel.component.cxf.HelloService"> <cxf:features> <ref bean="loggingOutInterceptor"/> </cxf:features> </cxf:cxfEndpoint> <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring"> <route> <from uri="cxf:bean:routerEndpoint" /> <to uri="cxf:bean:serviceEndpoint" /> </route> </camelContext> </beans> {code} > Allow CAMEL cxfEndpoint sub-elements to be factored out > -------------------------------------------------------- > > Key: CAMEL-2311 > URL: https://issues.apache.org/activemq/browse/CAMEL-2311 > Project: Apache Camel > Issue Type: Improvement > Components: camel-cxf > Affects Versions: Future > Reporter: Donal Arundel > Priority: Minor > Original Estimate: 4 hours > Remaining Estimate: 4 hours > > The objective is to be able to factor out cxfEndoint sub-elements (such as > features ) in order that they can be shared via bean references with other > camel CXF endpoints. > e.g. via <bean ref="someid"> > A camel cxf schema snippet is below. > The features element (for example) cannot be declared outside of the > cxfEndoint scope without violating the schema. > Global types should be defined for each sub-element to allow adressability > e.g. rather than the features element being declared directly as > "xsd:anyType", > it could be declared as a distinct featuresType which is defined globally > and can be refernced via <bean ref=someid"> for various cxfEndpoint elements > as required. > > My intial requriement was to have this for features, which is probably the > most useful - but It probably would make sense to address this for all > approrpiate cxfEndpoint sub-elements at the same time. > - <xsd:element name="cxfEndpoint"> > - <xsd:complexType> > - <xsd:complexContent> > - <xsd:extension base="beans:identifiedType"> > - <xsd:all> > <xsd:element name="binding" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="dataBinding" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="features" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="inInterceptors" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="inFaultInterceptors" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="outInterceptors" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="outFaultInterceptors" type="xsd:anyType" minOccurs="0" > /> > <xsd:element name="handlers" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="properties" type="beans:mapType" minOccurs="0" /> > <xsd:element name="schemaLocations" type="schemasType" minOccurs="0" /> > <xsd:element name="serviceBean" type="xsd:anyType" minOccurs="0" /> > <xsd:element name="serviceFactory" type="xsd:anyType" minOccurs="0" /> > </xsd:all> > <xsd:attributeGroup ref="cxf-beans:beanAttributes" /> > <xsd:attribute name="address" type="xsd:string" /> > <xsd:attribute name="bindingId" type="xsd:string" /> > <xsd:attribute name="bus" type="xsd:string" /> > <xsd:attribute name="serviceClass" type="xsd:string" /> > <xsd:attribute name="transportId" type="xsd:string" /> > <xsd:attribute name="wsdlURL" type="xsd:string" /> > <xsd:attribute name="endpointName" type="xsd:QName" /> > <xsd:attribute name="serviceName" type="xsd:QName" /> > </xsd:extension> > </xsd:complexContent> > </xsd:complexType> -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.