[CONF] Apache Camel MongoDB
Claus Ibsen edited the page: MongoDB ... div class confluenceTableSmall Name Default Value Description Producer Tailable Cursor Consumer database none Required. The name of the database to which this endpoint will be bound. All operations will be executed against this database unless dynamicity is enabled and theCamelMongoDbDatabase header is set. collection none Required. The name of the collection (within the specified database) to which this endpoint will be bound.All operations will be executed against this database unless dynamicity is enabled and theCamelMongoDbDatabase header is set.
[CONF] Apache Camel MINA2
Claus Ibsen edited the page: MINA2 ... Maven users will need to add the following dependency to their pom.xml for this component: Code Block xml dependency groupIdorg.apache.camel/groupId artifactIdcamel-mina2/artifactId versionx.x.x/version !-- use the same version as your Camel core version -- /dependency URI format Code Block mina2:tcp://hostname[:port][?options] mina2:udp://hostname[:port][?options] mina2:vm://hostname[:port][?options] ... div class confluenceTableSmall
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was referring to a type that was class annotated. FixedMyBatisto keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters. Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle. Fixed Advice-With to work with transacted routes defined in XML DSL Fixed Advice-With to work with Content Based Router when adding outputs to the when clauses. Fixed Advice-With to honor autoStartup option. FixedOnCompletion to route the completedExchangeeven if it was marked to stop / failed due exception / handled by error handler etc. Fixed using@EndpointInject with ref in RouteBuilderclasses, to enlist the endpoints in JMX during starting CamelContext when using OSGi FixedProperty Trigger.timerZone is declared as constant for camel-quartz component but not implemented when endpoint is instantiated FixedJPAto not shareEntityManager with concurrent threads or other exchanges, as anEntityManager is not thread-safe accordingly to the JPA spec. New Enterprise Integration Patterns ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Content Enricher
Claus Ibsen edited the page: Content Enricher ... Camel supports the Content Enricher from the EIP patterns using a Message Translator, an arbitrary Processor in the routing logic, or using the enrich DSL element to enrich the message. ... You can use Templating to consume a message from one destination, transform it with something like Velocity or XQuery, and then send it on to another destination. For example using InOnly (one way messaging) Code Block from(activemq:My.Queue). to(velocity:com/acme/MyResponse.vm). to(activemq:Another.Queue); If you want to use InOut (request-reply) semantics to process requests on the My.Queue queue on ActiveMQ with a template generated response, then sending responses back to the JMSReplyTo Destination you could use this: Code Block from(activemq:My.Queue). to(velocity:com/acme/MyResponse.vm); ... Finally we can use Bean Integration to use any Java method on any bean to act as the transformer Code Block from(activemq:My.Queue). beanRef(myBeanName, myMethodName). to(activemq:Another.Queue); ... Using Spring XML Code Block
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Metrics Component
Claus Ibsen edited the page: Metrics Component ... Themetrics:component allows to collect various metrics directly from Camel routes. Supported metric types arecounter,histogram, meterandtimer.Metricsprovides simple way to measure behaviour of application. Configurable reportingbackendis enabling different integration options for collecting and visualizing statistics. The component also provides aMetricsRoutePolicyFactory which allows to expose route statistics using codehale metrics, see bottom of page for details. ... Each metric has type and name. Supported types are counter, histogram,meterand timer. Metric name is simple string. If metric type is not provided then type meter is used by default. ... Name Default Description useJmx false Whether to report fine grained statistics to JMX by using the com.codahale.metrics.JmxReporter.Notice that if JMX is enabled on CamelContext then a MetricsRegistryService mbean is enlisted under the services type in the JMX tree. That mbean has a single operation to output the statistics using json. Setting useJmx to true is only needed if you want fine grained mbeans per statistics type. jmxDomain org.apache.camel.metrics The JMX domain name prettyPrint false Whether to use pretty print when outputting statistics in json format metricsRegistry Allow to use a shared com.codahale.metrics.MetricRegistry. If none is provided then Camel will create a shared instance used by the this CamelContext. rateUnit TimeUnit.SECONDS The unit to use for rate in the metrics reporter or when dumping the statistics as json.
[CONF] Apache Camel Articles
Claus Ibsen edited the page: Articles ... A bit more meat: Camel applied : JMS to File by Mike McLean Matteo wrote a blog entry about using Camel with iBatis Using the Camel aggregator correctly by Torsten Mielke Spring Remoting with JMS Example on Amin Abbaspour's Weblog Camel routes and HL7 by Roger Searjeant Leverage EIP with Apache Camel and Twitter by Bruno Borges Using RSS with Apache Camel by Jeroen Reijn Axis 2 ride with Camel how to use Axis 2 with Camel by Sagara A Camel based XML payload HTTP polling provider by Christopher Hunt First steps with Apache Camel on Google App Engine by Martin Krasser Camel, CXF and JMS by Example by Silvester van der Bijl A simple file monitoring console with camel, cometd and jquery by Andrej Koelewijn Advanced Event Notification Framework with Apache Camel by Hendy Camel IRC Message Route Example by James Carr A composite REST service using Apache Camel by Andrej Koelewijn EDA events over system boundaries with Camel by Sculptur team blog Dynamic FTP Client using Apache Camel and Spring by Mattias Severson Using Apache Camel to route SOAP calls through message queues by Glen Mazza Virtual ESB - application integration made painless with Apache Camel by Piotr Jagielski Application-Monitoring Statistics-Collection with Apache Camel by Martin Huber Camel exception handling overview by Ben O'Day Remote Observer Pattern with Publish-Subscribe via XMPP by Hendy Implementing Asynchronous Observer Pattern with Bean Proxy by Hendy Apache Camel Example Application - Earthquake Mashups showing how Camel using|\ EIPs can gather online earthquake and weather data and expose REST service. RouteBuilding with inherited configurations by Martin Huber Mathew's Thoughts on Apache Camel shows how Apache Camel easily can route messages from a JMS topic to files using the Content Based Router EIP. More blog posts to come. Transparent Asynchronous Remoting via JMS by Harald Wellman Dynamic Routing Using Health Information Policy with Apache Camel by Edward Brown and Jamie Goodyear Transforming and splitting huge EDI files using Smooks and Camel by Claus Straube
[CONF] Apache Camel XSLT
Claus Ibsen edited the page: XSLT ... Available as of Camel 2.9 (removed in 2.11.4, 2.12.3 and 2.13.0) Camel provides the CamelXsltResourceUri header which you can use to define a stylesheet to use instead of what is configured on the endpoint URI. This allows you to provide a dynamic stylesheet at runtime. Accessing warnings, errors and fatalErrors from XSLT ErrorListener Available as of Camel 2.14 From Camel 2.14 onwards, any warning/error or fatalError is stored on the current Exchange as a property with the keysExchange.XSLT_ERROR,Exchange.XSLT_FATAL_ERROR, orExchange.XSLT_WARNING which allows end users to get hold of any errors happening during transformation. For example in the stylesheet below, we want to terminate if a staff has an empty dob field. And to include a custom error message using xsl:message. Code Block xsl:template match=/ html body xsl:for-each select=staff/programmer pName: xsl:value-of select=name/br / xsl:if test=dob='' xsl:message terminate=yesError: DOB is an empty string!/xsl:message /xsl:if /p /xsl:for-each /body /html /xsl:template This information is not available on the Exchange stored as an Exception that contains the message in the getMessage() method on the exception. The exception is stored on the Exchange as a warning with the keyExchange.XSLT_WARNING. Notes on using XSLT and Java Versions ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel XSLT
Claus Ibsen edited the page: XSLT ... div class confluenceTableSmall Name Default Value Description converter null Option to override default XmlConverter. Will lookup for the converter in the Registry. The provided converted must be of type org.apache.camel.converter.jaxp.XmlConverter. transformerFactory null Option to override default TransformerFactory. Will lookup for the transformerFactory in the Registry. The provided transformer factory must be of type javax.xml.transform.TransformerFactory. transformerFactoryClass null Option to override default TransformerFactory. Will create a TransformerFactoryClass instance and set it to
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was referring to a type that was class annotated. FixedMyBatisto keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters. Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle. Fixed Advice-With to work with transacted routes defined in XML DSL Fixed Advice-With to work with Content Based Router when adding outputs to the when clauses. Fixed Advice-With to honor autoStartup option. FixedOnCompletion to route the completedExchangeeven if it was marked to stop / failed due exception / handled by error handler etc. Fixed using@EndpointInject with ref in RouteBuilderclasses, to enlist the endpoints in JMX during starting CamelContext when using OSGi New Enterprise Integration Patterns ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel iBATIS
Claus Ibsen edited the page: iBATIS ... Warning title Prefer MyBatis The Apache iBatis project is no longer active. The project is moved outside Apache and is now know as the MyBatis project.Therefore we encourage users to use MyBatis instead. This camel-ibatis component will be removed in Camel 3.0. iBatis do not support Spring 4.x. So you can only use Spring 3.x or older with iBatis. Maven users will need to add the following dependency to their pom.xml for this component: Code Block xml dependency groupIdorg.apache.camel/groupId artifactIdcamel-ibatis/artifactId versionx.x.x/version !-- use the same version as your Camel core version -- /dependency
[CONF] Apache Camel Swagger
Claus Ibsen edited the page: Swagger ... Code Block dependency groupIdorg.apache.camel/groupId artifactIdcamel-swagger/artifactId versionx.x.x/version !-- use the same version as your Camel core version -- /dependency Using To use this The Swagger servlet is integrated with Spring orServletListener Component. Component Servlet ClassName spring org.apache.camel.component.swagger.spring.SpringRestSwaggerApiDeclarationServlet servletlistener org.apache.camel.component.swagger.servletlistener.ServletListenerRestSwaggerApiDeclarationServlet The servlet support the same options when using spring or servletlistener. When using Spring you need to configure theorg.apache.camel.component.swagger.RestSwaggerApiDeclarationServletspring.SpringRestSwaggerApiDeclarationServletin theWEB-INF/web.xmlfile as shown below: Code Block !-- to setup Camel Swagger api servlet when using Spring -- servlet servlet-nameApiDeclarationServlet/servlet-name servlet-classorg.apache.camel.component.swagger.RestSwaggerApiDeclarationServletspring.SpringRestSwaggerApiDeclarationServlet/servlet-class init-param param-namebase.path/param-name param-valuehttp://localhost:8080/rest/param-value /init-param init-param param-nameapi.path/param-name
[CONF] Apache Camel SJMS
Claus Ibsen edited the page: SJMS ... Maven users will need to add the following dependency to their pom.xml for this component: Code Block xml dependency groupIdorg.apache.camel/groupId artifactIdcamel-sjms/artifactId versionx.x.x/version !-- use the same version as your Camel core version -- /dependency URI format Code Block sjms:[queue:|topic:]destinationName[?options] Where destinationName is a JMS queue or topic name. By default, the destinationName is interpreted as a queue name. For example, to connect to the queue, FOO.BAR use: Code Block sjms:FOO.BAR You can include the optional queue: prefix, if you prefer:
[CONF] Apache Camel SJMS
Claus Ibsen edited the page: SJMS ... Info title Why the S in SJMS S stands for Simple and Standard and Springless. Also camel-jms was already taken. Warning This is a rather new component in a complex world of JMS messaging. So this component is ongoing development and hardening. The classic JMS component based on Spring JMS has been hardened and battle tested extensively. Maven users will need to add the following dependency to their pom.xml for this component: ... div class confluenceTableSmall
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Kafka
Claus Ibsen created a page: Kafka Kafka Component Available as of Camel 2.13 The kafka: component is used for communicating with Apache Kafkamessage broker. Maven users will need to add the following dependency to their pom.xml for this component: dependency groupIdorg.apache.camel/groupId artifactIdcamel-kafka/artifactId versionx.x.x/version !-- use the same version as your Camel core version -- /dependency URI format kafka:server:port[?options] Options Property Default Description zookeeperHost The zookeeper host to use zookeeperPort 2181 The zookeeper port to use topic The topic to use groupId partitioner consumerStreams 10
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel XSLT
Claus Ibsen edited the page: XSLT ... div class confluenceTableSmall Name Default Value Description converter null Option to override default XmlConverter. Will lookup for the converter in the Registry. The provided converted must be of type org.apache.camel.converter.jaxp.XmlConverter. transformerFactory null Option to override default TransformerFactory. Will lookup for the transformerFactory in the Registry. The provided transformer factory must be of type javax.xml.transform.TransformerFactory. transformerFactoryClass null Option to override default TransformerFactory. Will create a TransformerFactoryClass instance and set it to
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel UuidGenerator
Claus Ibsen edited the page: UuidGenerator ... Starting with Camel 2.5, Camel supports 3rd party UUID generator(s). This is useful, if e.g. your messaging provider does not support UUID's with a length of 36 characters (like Websphere MQ). Another useful scenario is to use a simple counter for testing purpose. With this it is easier to correlate the exchanges in the log/debugger. Camel uses UUIDs in the exchange and message ids, and other unique ids it uses. You only have to implement org.apache.camel.spi.UuidGenerator and tell Camel, that it should use your custom implementation: Configuring from Java DSL Code Block getContext().setUuidGenerator(new MyCustomUuidGenerator()); ... Camel will configure this UUID generator by doing a lookup in the Spring bean registry to find the bean of the type org.apache.camel.spi.UuidGenerator. Code Block bean id=activeMQUuidGenerator class=org.apache.camel.impl.ActiveMQUuidGenerator / camelContext id=camel xmlns=http://camel.apache.org/schema/spring route from uri=direct:start / to uri=mock:result / /route /camelContext ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel User Stories
Claus Ibsen edited the page: User Stories ... Company, Product, or Project Description Apache ActiveMQ Uses Camel to add Enterprise Integration Patterns support into the ActiveMQ broker. If you run an out of the box ActiveMQ broker, look in conf/camel.xml and you'll see camelContext with some example routing rules. Can be used to bridge ActiveMQ with any of the camel Components. Apache ServiceMix Uses Camel as a routing engine as a JBI service unit for use either in JBI or OSGi to route between JBI endpoints. See the tutorial or example JBoss Fuse (formerly known as Fuse ESB) Red Hat provides a commercial distribution of an ESB which includes Camel, ActiveMQ, CXF, ServiceMix, Karaf, fabric8, and hawtio. Tools for Apache Camel (formerly know as Fuse IDE) JBoss provides developer tooling for Camel, ActiveMQ, ServiceMix, Karaf, CXF, and fabric8. The tools is a set of Eclipse plugins, such as a graphical Camel editor. fabric8 fabric8 is an open source integration platform, allow to run Camel applications anywhere; whether its on-premise or in the cloud. hawt.io hawt.io is an open source HTML5 web application for visualizing, managing and tracing Camel routes endpoints, ActiveMQ brokers, JMX, OSGi, logging, and much more. Grails The Grails Camel Routing Plugin provides integration of Camel into Grails Open ESB Camel SE Provides a JBI Service
[CONF] Apache Camel Articles
Claus Ibsen edited the page: Articles ... Linkedin Apache Camel group - Linkedin group for the Apache Camel project. Google Plus Apache Camel community - G+ community for the Apache Camel project. EIP printable flashcards - A 6 page PDF with printable EIP cards. There are several companies that provide extra documentation, examples, tutorials, etc... See the Commercial Camel Offerings page for more details. Apache Camel Reference Card at DZone by Claus Ibsen The Top Twelve Integration Patterns for Apache Camel Reference Card at DZone by Claus Ibsen Essential Camel Components Reference Card at DZone by Christian Posta The Apache Camel Components Poster (PDF,PDF w/ crops and bleed,JPG image,Printed)by Gliesian LLC.(October, 2013) ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was referring to a type that was class annotated. FixedMyBatisto keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters. Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle. Fixed Advice-With to work with transacted routes defined in XML DSL Fixed Advice-With to work with Content Based Router when adding outputs to the when clauses. Fixed Advice-With to honor autoStartup option. FixedOnCompletion to route the completedExchangeeven if it was marked to stop / failed due exception / handled by error handler etc. ... New Examples camel-example-splunkbox-osgi camel-example-servlet-rest-blueprint camel-example-servlet-rest-tomcat camel-example-spark-rest-tomcat camel-example-box-osgisplunk New ... New Tooling API changes Removed duplicate getter getMessageHistory onManagedCamelContextMBean Added org.apache.camel.spi.SynchronizationRouteAware AddedbeforeRoute and afterRoute methods to UnitOfWork. ... Polling Consumerallows to configure initial queue size and whether to block when full when
[CONF] Apache Camel ServletListener Component
Claus Ibsen edited the page: ServletListener Component ... div class confluenceTableSmall Option Type Description propertyPlaceholder.XXX To configure property placeholders in Camel. You should prefix the option with propertyPlaceholder., for example to configure the location, use propertyPlaceholder.location as name. You can configure all the options from the Properties component. jmx.XXX To configure JMX. You should prefix the option with jmx., for example to disable JMX, use jmx.disabled as name. You can configure all the options from org.apache.camel.spi.ManagementAgent. As well the options mentioned on the JMX page. name String To
[CONF] Apache Camel Metrics Component
Claus Ibsen edited the page: Metrics Component ... Themetrics:component allows to collect various metrics directly from Camel routes. Supported metric types arecounter,histogram, meterandtimer.Metricsprovides simple way to measure behaviour of application. Configurable reportingbackendis enabling different integration options for collecting and visualizing statistics. The component also provides aMetricsRoutePolicyFactory which allows to expose route statistics using codehale metrics, see bottom of page for details. ... Each metric has type and name. Supported types are counter, histogram,meterand timer. Metric name is simple string. If metric type is not provided then type meter is used by default. ... Name Default Description useJmx true Whether to report the fine grained statistics to JMX by using the com.codahale.metrics.JmxReporter jmxDomain org.apache.camel.metrics The JMX domain name prettyPrint false Whether to use pretty print when outputting statistics in json format metricsRegistry Allow to use a shared com.codahale.metrics.MetricRegistry. If none is provided then Camel will create a shared instance used by the this CamelContext. ... View Online Like View Changes Stop watching space Manage Notifications
[CONF] Apache Camel Metrics Component
Claus Ibsen edited the page: Metrics Component ... Themetrics:component allows to collect various metrics directly from Camel routes. Supported metric types arecounter,histogram, meterandtimer.Metricsprovides simple way to measure behaviour of application. Configurable reportingbackendis enabling different integration options for collecting and visualizing statistics. The component also provides aMetricsRoutePolicyFactory which allows to expose route statistics using codehale metrics, see bottom of page for details. ... Each metric has type and name. Supported types are counter, histogram,meterand timer. Metric name is simple string. If metric type is not provided then type meter is used by default. ... Name Default Description useJmx truefalse Whether to report fine grained statistics to JMX by using the com.codahale.metrics.JmxReporter. Notice that if JMX is enabled on CamelContext then a MetricsRegistryService mbean is enlisted under the services type in the JMX tree. That mbean has a single operation to output the statistics using json. Setting useJmx to true is only needed if you want fine grained mbeans per statistics type. jmxDomain org.apache.camel.metrics The JMX domain name prettyPrint false Whether to use pretty print when outputting statistics in json format metricsRegistry Allow to use a shared com.codahale.metrics.MetricRegistry. If none is provided then Camel will create a shared instance used by the this CamelContext. ...
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... New Languages XMLTokenizer New Examples camel-example-splunk camel-example-servlet-rest-blueprint camel-example-servlet-rest-tomcat camel-example-spark-rest-tomcat camel-example-box-osgi New Tutorials New Tooling API changes ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Advanced configuration of CamelContext using Spring
Claus Ibsen edited the page: Advanced configuration of CamelContext using Spring ... Type Number of beans Description InterceptStrategy 0..n To use your own Intercept that intercepts every processing steps in all routes in the CamelContext. For instance you can use this to do an AOP like performance timer interceptor. LifecycleStrategy 0..n Camel 2.1: To use 3rd party lifecycle strategies. By default Camel uses a JMX aware that does JMX instrumentation. EventNotifier 0..n Camel 2.2: To use 3rd part event notifiers. RoutePolicyFactory 0..n Camel 2.14: To use a 3rd party route policy factory to create a route policy for every route. Camel will log at INFO level if it pickup and uses a custom bean using org.apache.camel.spring.CamelContextFactoryBean as name. ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel RoutePolicy
Claus Ibsen edited the page: RoutePolicy ... You configure the route policy as follows from Java DSL, using the routePolicy method: Code Block RoutePolicy myPolicy = new MyRoutePolicy(); from(seda:foo).routePolicy(myPolicy).to(mock:result); In Spring XML its a bit different as follows using the routePolicyRef attribute: Code Block xml bean id=myPolicy class=com.mycompany.MyRoutePolicy/ route routePolicyRef=myPolicy from uri=seda:foo/ to uri=mock:result/ /route ... In the example below, the route testRoute has a startPolicy and throttlePolicy applied concurrently. Both policies are applied as necessary on the route. Code Block
[CONF] Apache Camel File2
Claus Ibsen edited the page: File2 ... div class confluenceTableSmall Name Default Value Description initialDelay 1000 Milliseconds before polling the file/directory starts. delay 500 Milliseconds before the next poll of the file/directory. useFixedDelay Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details. In Camel 2.7.x or older the default value is false. From Camel 2.8 onwards the default value is true.
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Removed duplicate getter getMessageHistory onManagedCamelContextMBean Added org.apache.camel.spi.SynchronizationRouteAware AddedbeforeRoute and afterRoute methods to UnitOfWork. Added a new method toorg.apache.camel.component.jms.QueueBrowseStrategy to support JMS selectors Known Issues Dependency Upgrades ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel OnCompletion
Claus Ibsen edited the page: OnCompletion ... scope: global and/or per route (route scope override all global scope) multiple global scope triggered either always, only if completed with success, or only if failed onWhen predicate to only trigger in certain situations Camel 2.14: mode: to define whether to run either before or after route consumer writes response back to callee (if its InOut) Camel 2.14: whether to run async or sync (use a thread pool or not) FromCamel 2.14 onwards the onCompletion has been modified to support running the completion task in either synchronous or asynchronous mode (using a thread pool) and also whether to run before or after the route consumer is done. The reason is to give more flexibility. For example to specify to run synchronous and before the route consumer is done, which allows to modify the exchange before the consumer writes back any response to the callee. You can use this to for example add customer headers, or send to a log to log the response message, etc. Info title Changes from Camel 2.14 onwards The onCompletion has changed defaults and behavior from Camel 2.14 onwards. It now runs Runs synchronously without any thread pool In Camel 2.13 the defaults were Runs asynchronous using a thread pool
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. REST DSL integrated with Swagger to expose the service as swagger apis. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). JDBCnow supports outputClass for SelectList type.
[CONF] Apache Camel Swagger
Claus Ibsen edited the page: Swagger ... div class confluenceTableSmall Option Type Description cors Boolean Whether to enable CORS. Notice this only enables CORS for the api browser, and not the actual access to the REST services. Is default false. Instead of using this option is recommended to use the CorsFilte, see further below. swagger.version String Swagger spec version. Is default 1.2. base.path String Required: To setup the base path where the REST services is available
[CONF] Apache Camel Swagger
Claus Ibsen edited the page: Swagger ... To use this you need to configure theorg.apache.camel.component.swagger.RestSwaggerApiDeclarationServletin theWEB-INF/web.xmlfile as shown below: Wiki Markup {snippet:id=e1|lang=xml|url=""> !-- to setup Camel Swagger api servlet -- servlet servlet-nameApiDeclarationServlet/servlet-name servlet-classorg.apache.camel.component.swagger.RestSwaggerApiDeclarationServlet/servlet-class init-param param-namebase.path/param-name param-valuehttp://localhost:8080/rest/param-value /init-param init-param param-nameapi.path/param-name param-valuehttp://localhost:8080/api-docs/param-value /init-param init-param param-nameapi.version/param-name param-value1.2.3/param-value /init-param init-param param-nameapi.title/param-name param-valueUser Services/param-value /init-param init-param param-nameapi.description/param-name param-valueCamel Rest Example with Swagger that provides an User REST service/param-value /init-param load-on-startup2/load-on-startup /servlet !-- swagger api declaration -- servlet-mapping servlet-nameApiDeclarationServlet/servlet-name url-pattern/api-docs/*/url-pattern /servlet-mapping Options Theorg.apache.camel.component.swagger.RestSwaggerApiDeclarationServletsupports the following options which can be configured as context-param in the web.xml file. ... To use CORS adds the following filter org.apache.camel.component.swagger.RestSwaggerCorsFilter to your web.xml. Wiki Markup {snippet:id=e2|lang=xml|url=""> !-- enable CORS filter so people can use swagger ui to browse and test the apis -- filter filter-nameRestSwaggerCorsFilter/filter-name filter-classorg.apache.camel.component.swagger.RestSwaggerCorsFilter/filter-class /filter filter-mapping filter-nameRestSwaggerCorsFilter/filter-name url-pattern/api-docs/*/url-pattern url-pattern/rest/*/url-pattern /filter-mapping The CorsFilter sets the following headers for all requests ...
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... div style padding-right:20px;float:left;margin-left:-20px; div style min-height:200px New and Noteworthy Welcome to the 2.14.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...) Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST
[CONF] Apache Camel Swagger
Claus Ibsen edited the page: Swagger ... div class confluenceTableSmall Option Type Description swagger.version String Swagger spec version. Is default 1.2. base.path String Required: To setup the base path where the API is available api.version String The version of the api. Defaults to Is default 0.0.0. api.path String
[CONF] Apache Camel Swagger
Claus Ibsen edited the page: Swagger ... div class confluenceTableSmall Option Type Description cors Boolean Whether to enable CORS. Is default false. swagger.version String Swagger spec version. Is default 1.2. base.path String Required: To setup the base path where the API REST services is available api.version String
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Option Default Description component The Camel Rest component to use for the REST transport, such as restlet, spark-rest. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if aorg.apache.camel.spi.RestConsumerFactoryis registered in the registry. If either one is found, then that is being used. scheme http The scheme to use for exposing the REST service. Usually http or https is supported hostname The hostname to use for exposing the REST service. port The port number to use for exposing the REST service. contextPath Sets a leading context-path the REST services will be using. This can be used when using components such as SERVLET where the deployed web application is deployed using a context-path. restHostNameResolver localHostName If no hostname has been explicit configured, then this resolver is used to compute the hostname the REST service will be using. The resolver supports localHostName or localIp. bindingMode off Whether binding is in use. See further above for more
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. camel-scala upgraded from Scala 2.10.x to 2.11.x The optionuseSsl has been removed fromcamel-twitter as ssl is always enabled now, enforced by twitter FixedRestlet to return error code 405 (instead of 404 if a http method is not allowed Routes starting fromJMSwill now shutdown the consumer (MessageListenerContainer) quicker when CamelContext is being stopped. (assuming theacceptMessagesWhileStopping hasn't been set to true). This can also help a cleaner shutdown as otherwise some JMS clients may attempt re-connect/failover during shutdown which isn't desired anyway as we are shutting down. If you want the routes to keep accepting messages during shutdown of Camel, then setacceptMessagesWhileStopping=true. Important changes to consider when upgrading ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Tip title Configuring route options In the embedded route you can configure the route settings such as routeId, autoStartup and various other options you can set on routes today. .get().route().routeId(myRestRoute).autoStartup(false).transform().constant(Hello World); Managing Rest services Each of the rest service becomes a Camel route, so in the first example we have 2 x get and 1 x post REST service, which each become a Camel route. This makes itthe same from Camel to manage and run these services - as they are just Camel routes. This means any tooling and API today that deals with Camel routes, also work with the REST services. This means you can use JMX to stop/start routes, and also get the JMX metrics about the routes, such as number of message processed, and their performance statistics. There is also a Rest Registry JMX MBean that contains a registry of all REST services which has been defined. Binding to POJOs using The Rest DSL supports automatic binding json/xml contents to/from POJOs using CamelsData Format. By default the binding mode is off, meaning there is no automatic binding happening for incoming and outgoing messages. ... Option Default Description component
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Code Block language java protected RouteBuilder createRouteBuilder() throws Exception { return new RouteBuilder() { @Override public void configure() throws Exception { rest(/say/hello) .get(/hello).to(direct:hello); rest(/say/bye) .get(/bye).consumes(application/json).to(direct:bye) .post(/bye).to(mock:update); from(direct:hello) .transform().constant(Hello World); from(direct:bye) .transform().constant(Bye World); } }; } ... This defines a REST service with the following url mappings: Base Path Uri template Verb Consumes /say /hello get all /say /bye get application/json
[CONF] Apache Camel JDBC
Claus Ibsen edited the page: JDBC ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{readSize}} | {{0}} | The default maximum number of rows that can be read by a polling query. The default value is 0. | | {{statement.xxx}} | {{null}} | *Camel 2.1:* Sets additional options on the {{java.sql.Statement}} that is used behind the scenes to execute the queries. For instance, {{statement.maxRows=10}}. For detailed documentation, see the [{{java.sql.Statement}} javadoc|http://java.sun.com/j2se/1.5.0/docs/api/java/sql/Statement.html] documentation. | | {{useJDBC4ColumnNameAndLabelSemantics}} | {{true}} | *Camel 2.2:* Sets whether to use JDBC 4/3 column label/name semantics. You can use this option to turn it {{false}} in case you have issues with your JDBC driver to select data. This only applies when using {{SQL SELECT}} using aliases (e.g. {{SQL SELECT id as identifier, name as given_name from persons}}). | | {{resetAutoCommit}} | {{true}} | *Camel 2.9:* Camel will set the autoCommit on the JDBC connection to be false, commit the change after executed the statement and reset the autoCommit flag of the connection at the end, if the resetAutoCommit is true. If the JDBC connection doesn't support to reset the autoCommit flag, you can set the resetAutoCommit flag to be false, and Camel will not try to reset the autoCommit flag.| | {{allowNamedParameters}} | {{true}} | *Camel 2.12:* Whether to allow using named parameters in the queries. | | {{prepareStatementStrategy}} | | *Camel 2.12:* Allows to plugin to use a custom {{org.apache.camel.component.jdbc.JdbcPrepareStatementStrategy}} to control preparation of the query and prepared statement. | | {{useHeadersAsParameters}} | {{false}} | *Camel 2.12:* Set this option to {{true}} to use the {{prepareStatementStrategy}} with named parameters. This allows to define queries with named placeholders, and use headers with the dynamic values for the query placeholders. | | {{outputType}} | {{SelectList}} | *Camel 2.12.1:* Make the output of the producer to SelectList as List of Map, or SelectOne as single Java object in the following way: a) If the query has only single column, then that JDBC Column object is returned. (such as SELECT COUNT( * ) FROM PROJECT will return a Long object. b) If the query has more than one column, then it will return a Map of that result. c) If the outputClass is set, then it will convert the query result into an Java bean object by calling all the setters that match the column names. It will assume your class has a default constructor to create instance with. From *Camel 2.14* onwards then SelectList is also supported. | d) If the query resulted in more than one rows, it throws an non-unique result exception. *Camel 2.14.0:* New {{StreamList}} output type value that streams the result of the query using an {{IteratorMapString, Object}}, it can be used along with the [Splitter] EIP. | | {{outputClass}} | {{null}} | *Camel 2.12.1:* Specify the full package and class name to use as conversion when outputType=SelectOne. From *Camel 2.14* onwards then SelectList is also supported. | | {{beanRowMapper}} | | *Camel 2.12.1:* To use a custom {{org.apache.camel.component.jdbc.BeanRowMapper}} when using {{outputClass}}. The default implementation will lower case the row names and skip underscores, and dashes. For
[CONF] Apache Camel JDBC
Claus Ibsen edited the page: JDBC ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{readSize}} | {{0}} | The default maximum number of rows that can be read by a polling query. The default value is 0. | | {{statement.xxx}} | {{null}} | *Camel 2.1:* Sets additional options on the {{java.sql.Statement}} that is used behind the scenes to execute the queries. For instance, {{statement.maxRows=10}}. For detailed documentation, see the [{{java.sql.Statement}} javadoc|http://java.sun.com/j2se/1.5.0/docs/api/java/sql/Statement.html] documentation. | | {{useJDBC4ColumnNameAndLabelSemantics}} | {{true}} | *Camel 2.2:* Sets whether to use JDBC 4/3 column label/name semantics. You can use this option to turn it {{false}} in case you have issues with your JDBC driver to select data. This only applies when using {{SQL SELECT}} using aliases (e.g. {{SQL SELECT id as identifier, name as given_name from persons}}). | | {{resetAutoCommit}} | {{true}} | *Camel 2.9:* Camel will set the autoCommit on the JDBC connection to be false, commit the change after executed the statement and reset the autoCommit flag of the connection at the end, if the resetAutoCommit is true. If the JDBC connection doesn't support to reset the autoCommit flag, you can set the resetAutoCommit flag to be false, and Camel will not try to reset the autoCommit flag.| | {{allowNamedParameters}} | {{true}} | *Camel 2.12:* Whether to allow using named parameters in the queries. | | {{prepareStatementStrategy}} | | *Camel 2.12:* Allows to plugin to use a custom {{org.apache.camel.component.jdbc.JdbcPrepareStatementStrategy}} to control preparation of the query and prepared statement. | | {{useHeadersAsParameters}} | {{false}} | *Camel 2.12:* Set this option to {{true}} to use the {{prepareStatementStrategy}} with named parameters. This allows to define queries with named placeholders, and use headers with the dynamic values for the query placeholders. | | {{outputType}} | {{SelectList}} | *Camel 2.12.1:* Make the output of the producer to SelectList as List of Map, or SelectOne as single Java object in the following way: a) If the query has only single column, then that JDBC Column object is returned. (such as SELECT COUNT( * ) FROM PROJECT will return a Long object. b) If the query has more than one column, then it will return a Map of that result. c) If the outputClass is set, then it will convert the query result into an Java bean object by calling all the setters that match the column names. It will assume your class has a default constructor to create instance with. From *Camel 2.14* onwards then SelectList is also supported. | d) If the query resulted in more than one rows, it throws an non-unique result exception. *Camel 2.14.0:* New {{StreamList}} output type value that streams the result of the query using an {{IteratorMapString, Object}}, it can be used along with the [Splitter] EIP. | | {{outputClass}} | {{null}} | *Camel 2.12.1:* Specify the full package and class name to use as conversion when outputType=SelectOne. From *Camel 2.14* onwards then SelectList is also supported. | | {{beanRowMapper}} | | *Camel 2.12.1:* To use a custom {{org.apache.camel.component.jdbc.BeanRowMapper}} when using {{outputClass}}. The default implementation will lower case the row names and skip underscores, and dashes. For
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... camel-ahc-ws camel-atmosphere-websocket camel-box camel-dropbox camel-metrics camel-netty4 camel-openshift camel-gora camel-rest (in camel-core) camel-spark-rest ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. camel-scala upgraded from Scala 2.10.x to 2.11.x The optionuseSsl has been removed fromcamel-twitter as ssl is always enabled now, enforced by twitter FixedRestlet to return error code 405 (instead of 4040 if a http method is not allowed Important changes to consider when upgrading ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel How do I import rests from other XML files
Claus Ibsen created a page: How do I import rests from other XML files How do I import rests from other XML files Available as of Camel 2.14 When defining rests in Camel using Xml Configuration you may want to define some rests in other XML files. For example you may have many rest services and it may help to maintain the application if some of the rests are in separate XML files. You may also want to store common and reusable rests in other XML files, which you can simply import when needed. This is possible to define rests outside camelContext/ which you do in a new restContext/ tag. Icon Notice: When you use restContext then they are separated, and cannot reuse existing onException, intercept, dataFormats and similar cross cutting functionality defined in the camelContext. In other words the restContext is currently isolated. This may change in Camel 3.x. For example we could have a file named myCoolRests.xml which contains a rest (can have more) as shown: restContext id=myCoolRest xmlns=http://camel.apache.org/schema/spring rest uri=/say/hello get to uri=direct:hello/ /get /rest /restContext Then in your XML file which contains the CamelContext you can use Spring to import the myCoolRests.xml file. And then inside camelContext/ you can refer to the restContext/using the restContextRef by its id as shown below: camelContext xmlns=http://camel.apache.org/schema/spring restContextRef ref=myCoolRest/ rest uri=/say/bye get consumes=application/json to uri=direct:bye/ /get post to uri=mock:update/ /post /rest route from uri=direct:hello/ transform constantHello World/constant /transform /route route from uri=direct:bye/ transform constantBye World/constant /transform /route /camelContext Also notice that you can mix and match, having rests inside CamelContext and also externalized in RestContext. You can have as many restContextRef/ as you like. Reusable rests Icon The rests defined in restContext/ can be reused by multiple camelContext/. However its only the definition which is reused. At runtime each CamelContext will create its own instance of the rest based on the definition.
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... See Also DSL Rest Spark-rest How do I import rests from other XML files View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... camel-ahc-ws camel-atmosphere-websocket camel-box camel-dropbox camel-metrics camel-openshift camel-gora camel-rest (in camel-core) camel-spark-rest ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Removed duplicate getter getMessageHistory onManagedCamelContextMBean Added org.apache.camel.spi.SynchronizationRouteAware AddedbeforeRoute and afterRoute methods to UnitOfWork. Added a new method toorg.apache.camel.component.jms.QueueBrowseStrategy to support JMS selectors Known Issues Dependency Upgrades ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... The following Camel components supports the Rest DSL. See the bottom of this page for how to integrate a component with the Rest DSL. camel-netty-http camel-jetty camel-restlet camel-servlet camel-spark-rest Rest DSL with Java To use the Rest DSL in Java then just do as with regular Camel routes by extending theRouteBuilder and define the routes in theconfigure method. ... Any Apache Camel component can integrate with the Rest DSL if they can be used as a REST service (eg as a REST consumer in Camel lingo). To integrate with the Rest DSL, then the component should implement theorg.apache.camel.spi.RestConsumerFactory. The Rest DSL will then invoke thecreateConsumer method when it setup the Camel routes from the defined DSL. The component should then implement logic to create a Camel consumer that exposes the REST services based on the given parameters, such as path, verb, and other options. For example see the source code for camel-restlet, camel-spark-rest. See Also DSL Rest Restlet Spark-rest View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Andcamel-jackson can now easily be configured to unmarshal to aListpojoor ListMapinstead of either a single pojo orMap type. IntroducedSynchronizationRouteAware allowing to have callbacks before/after an Exchange is being routed. This allows to trigger custom code at these points, for example after a route, but before a Consumer writes any response back to a caller (InOut mode). Fixed Issues Timer consumer is now scheduled after CamelContext
[CONF] Apache Camel OnCompletion
Claus Ibsen edited the page: OnCompletion ... Camel has this concept of a Unit of Work that encompass the Exchange. The unit of work among others supports synchronization callbacks that are invoked when the Exchange is complete. The callback API is defined in org.apache.camel.spi.Synchronization. From Camel 2.14 onwards we have an extended synchronization org.apache.camel.spi.SynchronizationRouteAwarethat have callbacks for route events. Tip title Getting the UnitOfWork You can get hold of the org.apache.camel.spi.UnitOfWork from org.apache.camel.Exchange with the method getUnitOfWork(). ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... The Rest DSL is a facade that builds Restendpoints as consumers for Camel routes. The actual REST transport is leveraged by using Camel REST components such asRestlet,Spark-rest, and others that has native REST integration. Components supporting Rest DSL The following Camel components supports the Rest DSL. See the bottom of this page for how to integrate a component with the Rest DSL. camel-jetty camel-restlet camel-spark-rest Rest DSL with Java To use the Rest DSL in Java then just do as with regular Camel routes by extending theRouteBuilder and define the routes in theconfigure method. ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Jetty
Claus Ibsen edited the page: Jetty ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{sessionSupport}} | {{false}} | Specifies whether to enable the session manager on the server side of Jetty. | | {{httpClient.XXX}} | {{null}} | Configuration of Jetty's [HttpClient|http://wiki.eclipse.org/Jetty/Tutorial/HttpClient]. For example, setting {{httpClient.idleTimeout=3}} sets the idle timeout to 30 seconds. And {{httpClient.timeout=3}} sets the request timeout to 30 seconds, in case you want to timeout sooner if you have long running request/response calls. | | {{httpClient}} | {{null}} | To use a shared {{org.eclipse.jetty.client.HttpClient}} for all producers created by this endpoint. This option should only be used in special circumstances. | | {{httpClientMinThreads}} | {{null}} | *Camel 2.11:* *Producer only*: To set a value for minimum number of threads in {{HttpClient}} thread pool. This setting override any setting configured on component level. Notice that both a min and max size must be configured. If not set it default to min 8 threads used in Jettys thread pool. | | {{httpClientMaxThreads}} | {{null}} | *Camel 2.11:* *Producer only*: To set a value for maximum number of threads in {{HttpClient}} thread pool. This setting override any setting configured on component level. Notice that both a min and max size must be configured. If not set it default to max 254 threads used in Jettys thread pool. | | {{httpBindingRef}} | {{null}} | Reference to an {{org.apache.camel.component.http.HttpBinding}} in the [Registry]. {{HttpBinding}} can be used to customize how a response should be written for the consumer. | | {{jettyHttpBindingRef}} | {{null}} | *Camel 2.6.0+:* Reference to an {{org.apache.camel.component.jetty.JettyHttpBinding}} in the [Registry]. {{JettyHttpBinding}} can be used to customize how a response should be written for the producer. | | {{matchOnUriPrefix}} | {{false}} | Whether or not the {{CamelServlet}} should try to find a target consumer by matching the URI prefix if no exact match is found. See here [How do I let Jetty match wildcards]. | | {{handlers}} | {{null}} | Specifies a comma-delimited set of {{org.mortbay.jetty.Handler}} instances in your [Registry] (such as your Spring {{ApplicationContext}}). These handlers are added to the Jetty servlet context (for example, to add security). *Important:* You can not use different handlers with different Jetty endpoints using the same port number. The handlers is associated to the port number. If you need different handlers, then use different port numbers. | | {{chunked}} | {{true}} | *Camel 2.2:* If this option is false Jetty servlet will disable the HTTP streaming and set the content-length header on the response | | {{enableJmx}} | {{false}} | *Camel 2.3:* If this option is true, Jetty JMX support will be enabled for this endpoint. See [Jetty JMX support|#Jetty JMX support] for more details. | | {{disableStreamCache}} | {{false}} | *Camel 2.3:* Determines whether or not the raw input stream from Jetty is cached or not (Camel will read the stream into a in memory/overflow to file, [Stream caching]) cache. By default Camel will cache the Jetty input stream to support reading it multiple times to ensure it Camel can retrieve all data from the stream. However you can set this option to
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... This means you can use JMX to stop/start routes, and also get the JMX metrics about the routes, such as number of message processed, and their performance statistics. Example - camel-example-spark-rest-tomcat We provide an example that uses the REST DSL with the Spark Rest component that can be deployed in web containers such as Apache Tomcat. This example definesa single REST service which offers a GET operation that accepts 3 different types: plain text, json, and xml. ... Binding to POJOs using The Rest DSL supports automatic binding json/xml contents to/from POJOs using CamelsData Format. By default the binding mode is off, meaning there is no automatic binding happening for incoming and outgoing messages. You may want to use binding if you develop POJOs that maps to your REST services request and response types. This allows you as a developer to work with the POJOs in Java code. The binding modes are: Binding Mode Description off Binding is turned off. This is the default option. auto Binding is enabled and Camel is relaxed and support json, xml or both if the needed data formats are included in the classpath. Notice that if for example camel-jaxb is not on the classpath, then XML binding is not enabled. json Binding to/from json is enabled, and requires a json capabile data format on the classpath. By default Camel will use json-jackson as the data format. xml Binding to/from xml is enabled, and requires camel-jaxb on the classpath. json_xml Biding to/from json and xml is enabled and requires both data formats to be on the classpath.
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Option Default Description component The Camel Rest component to use for the REST transport, such as restlet, spark-rest. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if aorg.apache.camel.spi.RestConsumerFactoryis registered in the registry. If either one is found, then that is being used. scheme http The scheme to use for exposing the REST service. Usually http or https is supported hostname 0.0.0.0 The hostname to use for exposing the REST service. port The port number to use for exposing the REST service. bindingMode off Whether binding is in use. See further above for more details. jsonDataFormat Name of specific json data format to use. By default json-jackson will be used. Notice: Currently Jackson is what we recommend and are using for testing. xmlDataFormat Name of specific XML data format to use. By default jaxb will be used. Notice: Currently only jaxb is supported.
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Option Default Description component The Camel Rest component to use for the REST transport, such as restlet, spark-rest. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if aorg.apache.camel.spi.RestConsumerFactoryis registered in the registry. If either one is found, then that is being used. scheme http The scheme to use for exposing the REST service. Usually http or https is supported hostname 0.0.0.0 The hostname to use for exposing the REST service. port The port number to use for exposing the REST service. bindingMode off Whether binding is in use. See further above for more details. jsonDataFormat Name of specific json data format to use. By default json-jackson will be used. Notice: Currently Jackson is what we recommend and are using for testing. xmlDataFormat Name of specific XML data format to use. By default jaxb will be used. Notice: Currently only jaxb is supported.
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Atomikos 3.9.2 to 3.9.3 Commons-codec 1.8 to 1.9 CXF 2.7.11 to 3.0.0 Deltaspike 0.7 to 1.0.0 Dozer 5.4.0 to 5.5.1 EhCache 2.8.1 to 2.8.3 Groovy 2.2.2 to 2.3.3 Guava 16.0.1 to 17.0 Hapi 2.1 to 2.2 Hazelcast 3.0.3 to 3.2.4 JRuby 1.7.10 to 1.7.12 MongoDB-Java-Driver 2.11.4 to 2.12.0 RabbitMQ AMQ Client 3.2.2 to 3.3.0 RxJava 0.17.5 to 0.19.4 Scala 2.10.3 to 2.10.4 Snmp4j 2.2.5 to 2.3.0 SSHD 0.10.1 to 0.11.0 spring-redis 1.1.0 to 1.3.0 ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Atomikos 3.9.2 to 3.9.3 Commons-codec 1.8 to 1.9 CXF 2.7.11 to 3.0.1 Deltaspike 0.7 to 1.0.1 Dozer 5.4.0 to 5.5.1 EhCache 2.8.1 to 2.8.3 Groovy 2.2.2 to 2.3.4 Guava 16.0.1 to 17.0 Hapi 2.1 to 2.2 Hazelcast 3.0.3 to 3.2.4 JRuby 1.7.10 to 1.7.12 MongoDB-Java-Driver 2.11.4 to 2.12.0 RabbitMQ AMQ Client 3.2.2 to 3.3.0 RxJava 0.17.5 to 0.19.4 Scala 2.10.3 to 2.1011.42 Snmp4j 2.2.5 to 2.3.0 SSHD 0.10.1 to 0.11.0 spring-redis 1.1.0 to 1.3.0 ... Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. camel-scala upgraded from Scala 2.10.x to 2.11.x Important changes to consider when upgrading ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Restlet
Claus Ibsen edited the page: Restlet ... Name Default Value Description headerFilterStrategy=#refName An instance of RestletHeaderFilterStrategy Use the # notation (headerFilterStrategy=#refName) to reference a header filter strategy in the Camel Registry. The strategy will be plugged into the restlet binding if it is HeaderFilterStrategyAware. restletBinding=#refName An instance of DefaultRestletBinding The bean ID of a RestletBinding object in the Camel Registry. restletMethod GET On a producer endpoint, specifies the request method to use. On a consumer endpoint, specifies that the endpoint consumes only restletMethod requests. The string value is converted to org.restlet.data.Method by the Method.valueOf(String) method. restletMethods None Consumer only Specify one or more methods separated by commas (e.g. restletMethods=post,put) to be serviced by a restlet consumer endpoint. If both restletMethod and restletMethods options are specified, the restletMethod setting is ignored. restletRealm=#refName null The bean ID of the Realm Map in the Camel Registry. restletUriPatterns=#refName None Consumer only Specify one ore more URI templates to be serviced by a restlet consumer endpoint, using the # notation to reference a ListString in the Camel Registry. If a URI pattern has been defined in the endpoint URI, both the URI pattern defined in the endpoint and the
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Atomikos 3.9.2 to 3.9.3 Commons-codec 1.8 to 1.9 CXF 2.7.11 to 3.0.1 Deltaspike 0.7 to 1.0.1 Dozer 5.4.0 to 5.5.1 EhCache 2.8.1 to 2.8.3 Groovy 2.2.2 to 2.3.4 Guava 16.0.1 to 17.0 Hapi 2.1 to 2.2 Hazelcast 3.0.3 to 3.2.4 JRuby 1.7.10 to 1.7.12 MongoDB-Java-Driver 2.11.4 to 2.12.0 RabbitMQ AMQ Client 3.2.2 to 3.3.0 Restlet 2.17 to 2.2.1 RxJava 0.17.5 to 0.19.4 Scala 2.10.3 to 2.11.2 Snmp4j 2.2.5 to 2.3.0 SSHD 0.10.1 to 0.11.0 spring-redis 1.1.0 to 1.3.0 Twitter4j 3.0.5 x to 4.0.1 Internal changes Changed ... ... Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. camel-scala upgraded from Scala 2.10.x to 2.11.x The optionuseSsl has been removed fromcamel-twitter as ssl is always enabled now, enforced by twitter Important changes to consider when upgrading ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel JSON
Claus Ibsen edited the page: JSON ... Code Block language xml from uri=direct:inPojoAgeView/ marshal json library=Jackson unmarshalTypeName=org.apache.camel.component.jackson.TestPojoView jsonView=org.apache.camel.component.jackson.Views$Age/ /marshal Setting serialization include option for Jackson marshal Available as of Camel 2.13.3/2.14 If you want to marshal a pojo to JSON, and the pojo has some fields with null values. And you want to skip these null values, then you need to set either an annotation on the pojo, Code Block @JsonInclude(Include.NON_NULL) public class MyPojo { ... } But this requires you to include that annotation in your pojo source code. You can also configure the Camel JsonDataFormat to set the include option, as shown below: Code Block JacksonDataFormat format = new
[CONF] Apache Camel JSON
Claus Ibsen edited the page: JSON ... Code Block dataFormats json id=json library=Jackson include=NOT_NULL/ /dataFormats Unmarshalling from json to POJO with dynamic class name Available as of Camel 2.14 If you use jackson to unmarshal json to POJO, then you can now specify a header in the message that indicate which class name to unmarshal to. The header has key CamelJacksonUnmarshalTypeif that header is present in the message, then Jackson will use that as FQN for the POJO class to unmarshal the json payload as. Notice that behavior is enabled out of the box from Camel 2.14 onwards. For JMS end users there is the JMSType header from the JMS spec that indicates that also. To enable support for JMSType you would need to turn that on, on the jackson data format as shown: Code Block JacksonDataFormat format = new JacksonDataFormat(); format.setAllowJmsType(true); Or from XML DSL you configure this as Code Block dataFormats json id=json library=Jackson allowJmsType=true/ /dataFormats Dependencies for XStream To use JSON in your camel routes you need to add the a dependency on camel-xstream which implements this data format. ...
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Unmarshal json to pojo usingcamel-jackson now supports a header to tell Camel what the pojo class name is, to allow more dynamic behavior, as otherwise the class name would be hardcoded. Also allow to configurecamel-jackson to skip null values, by setting includes toNOT_NULL. Fixed Issues Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak
[CONF] Apache Camel Rest
Claus Ibsen created a page: Rest Rest Component Available as of Camel 2.14 The rest component allows to define REST endpoints using the Rest DSL and plugin to other Camel components as the REST transport. URI format rest://verb:path?[options] URI Options Name Default Value Description verb get, post, put, patch, delete, head, trace, connect, or options. path the content path which support REST syntax. See further below for examples. consumes accept type such as: 'text/xml', or 'application/json'. By default we accept all kinds of types. Path syntax The path option is defined using a REST syntax where you define the REST context path using support for parameters. The following is a Camel route using a fixed path from(rest:get:hello) .transform().constant(Bye World); And the following route uses a parameter which is mapped to a Camel header with the key me. from(rest:get:hello/{me}) .transform().simple(Bye ${header.me}); More examples There is a camel-example-spark-rest-tomcat example in the Apache Camel distribution, that demonstrates how to use the Rest DSL with theSpark-rest as transportthat can be deployed on Apache Tomcat, or similar web containers.
[CONF] Apache Camel Spark-rest
Claus Ibsen edited the page: Spark-rest ... The Spark-rest component allows to define REST endpoints using the Spark REST Java library which has a nice using the Rest DSL. Info Spark Java requires Java 8 runtime. ... Code Block from(spark-rest:get:/hello/*/to/*) .transform().simple(Bye big ${header.splat[1]} from ${header.splat[0]}); SparkRouteBuilder If you use Java code, then you can use the classorg.apache.camel.component.sparkrest.SparkRouteBuilder to define routes using a Spark DSL, as shown below Rest DSL Apache Camel provides a new Rest DSL that allow to define the REST services in a nice REST style. For example we can define a REST hello service in Java DSL as shown below: Code Block return new SparkRouteBuilderRouteBuilder() { @Override public void configure() throws Exception { getrest(/hello/:{me}).get() .route().transform().simple(Bye ${header.me}); } }; When using the SparkRouteBuilder, then you can define Camel routes using the REST verbs, such as get, post, put, delete etc. And the same example in XML DSL would be
[CONF] Apache Camel DSL
Claus Ibsen edited the page: DSL ... Java DSL - A Java based DSL using the fluent builder style. Spring XML - A XML based DSL in Spring XML files Blueprint XML - A XML based DSL in OSGi Blueprint XML files Rest DSL - A DSL to define REST services using a REST style in either Java or XML. Groovy DSL - A Groovy based DSL using Groovy programming language Scala DSL - A Scala based DSL using Scala programming language Annotation DSL - Use annotations in Java beans. Kotlin DSL - Work in progress - Currently developed outside ASF, but will we included later in Camel when Kotlin and the DSL is ready. ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... To define the REST services we use therest method, where we can setup the path, which is /hello/{me}. Where me refers the a wildcard that is mapped to Camel message header with the same key. Notice how we can refer to this header in the embedded Camel routes where we do message transformation.And because we used embedded routes, we need to define this using .route(), and to denote the end of the route, we use .endRest() to go back to the Rest DSL, where we can then add the 2nd, and 3rd get service. ... See Also DSL Rest Restlet Spark-rest View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen created a page: Rest DSL Rest DSL Available as of Camel 2.14 Apache Camel offers a REST styled DSL which can be used with Java or XML. The intention is to allow end users to define REST services using a REST style with verbs such as get, post, delete etc. How it works The Rest DSL is a facade that builds Restendpoints as consumers for Camel routes. The actual REST transport is leveraged by using Camel REST components such asRestlet,Spark-rest, and others that has native REST integration. Rest DSL with Java To use the Rest DSL in Java then just do as with regular Camel routes by extending theRouteBuilder and define the routes in theconfigure method. A simple REST service can be define as follows, where we use rest() to define the services as shown below: protected RouteBuilder createRouteBuilder() throws Exception { return new RouteBuilder() { @Override public void configure() throws Exception { rest(/say/hello) .get().to(direct:hello); rest(/say/bye) .get().consumes(application/json).to(direct:bye) .post().to(mock:update); from(direct:hello) .transform().constant(Hello World); from(direct:bye) .transform().constant(Bye World); } }; } This defines a REST service with the following url mappings: Uri template Verb Consumes /say/hello get all /say/bye get application/json /say/bye post all Notice that in the REST service we route directly to a Camel endpoint using the to(). This is
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. REST DSL to define REST services using a REST style with verbs such as get/post/put/delete etc. The Rest DSL supports Java and XML DSL. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. ... camel-ahc-ws camel-atmosphere-websocket camel-box camel-openshift camel-gora camel-rest (in camel-core) camel-spark-rest New Camel Maven Archetypes ...
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Notice that in the REST service we route directly to a Camel endpoint using the to(). This is because the Rest DSL has a short-hand for routing directly to an endpoint using to(). An alternative is to embed a Camel route directly using route() - there is such an example further below. Rest DSL with XML The REST DSL supports the XML DSL also using either Spring or Blueprint. The example above can be define in XML as shown below: Code Block camelContext xmlns=http://camel.apache.org/schema/spring rest uri=/say/hello get to uri=direct:hello/ /get /rest rest uri=/say/bye get consumes=application/json to uri=direct:bye/ /get post to uri=mock:update/ /post /rest route from uri=direct:hello/ transform constantHello World/constant /transform /route route from uri=direct:bye/ transform constantBye World/constant /transform /route /camelContext Using path prefixes The REST DSL allows to define path prefixes to make the DSL a bit more DRY. For example to define a customer path, we can set the prefix in rest(/customer) and then provide the past postfix in the verbs, as shown below: Code Block rest(/customers/) .get(/{id}).to(direct:customerDetail) .get(/{id}/orders).to(direct:customerOrders) .post(/neworder).to(direct:customerNewOrder); And using XML DSL it becomes: Code Block rest
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Tip The REST DSL will take care of duplicate path separators when using path prefixes. In the example above the rest path prefix ends with a slash ( / ) and the verb starts with a slash ( / ). But Apache Camel will take care of this and remove the duplicated slash. camel-example-spark-rest-tomcat ... Option Default Description component The Camel Rest component to use for the REST transport, such as restlet, spark-rest. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if a org.apache.camel.spi.RestConsumerFactory is registered in the registry. If either one is found, then that is being used. scheme http The scheme to use for exposing the REST service. Usually http or https is supported hostname 0.0.0.0 The hostname to use for exposing the REST service. port The port number to use for exposing the REST service. property
[CONF] Apache Camel Spark-rest
Claus Ibsen edited the page: Spark-rest ... The Spark-rest component allows to define REST endpoints using the Spark REST Java library using the Rest DSL. Info Spark Java requires Java 8 runtime. ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Rest DSL
Claus Ibsen edited the page: Rest DSL ... Option Default Description component The Camel Rest component to use for the REST transport, such as restlet, spark-rest. If no component has been explicit configured, then Camel will lookup if there is a Camel component that integrates with the Rest DSL, or if aorg.apache.camel.spi.RestConsumerFactoryis registered in the registry. If either one is found, then that is being used. scheme http The scheme to use for exposing the REST service. Usually http or https is supported hostname 0.0.0.0 The hostname to use for exposing the REST service. port The port number to use for exposing the REST service. propertycomponentProperty Allows to configure as many additional properties. This is used to configure component specific options such as forRestlet/Spark-Restetc. endpointProperty Allows to configure as many additional properties. This is used to configure endpoint specific options for Restlet/Spark-Restetc. consumerProperty Allows to configure as many additional properties. This is used to configure consumer specific options for Restlet/Spark-Restetc.
[CONF] Apache Camel Manual
Claus Ibsen edited the page: Manual ... You can download a specific version here Manual Versions Camel Manual 2.13.x (html) Camel Manual 2.12.x (html) Camel Manual 2.11.x (pdf) Camel Manual 2.10.x (pdf) Camel Manual 2.9.x (pdf) Camel Manual 2.8.x (pdf) Camel Manual 2.7.x (pdf) Camel Manual 2.6.0 (pdf) Camel Manual 2.5.0 (pdf) Camel Manual 2.4.0 (pdf) Camel Manual 2.3.0 (pdf) Camel Manual 2.2.0 (pdf) Camel Manual 2.0.0 (pdf) Camel Manual 1.6.4 (pdf) Camel Manual 1.6.3 (pdf)
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Support to set the variable map from message header in Velocity, Freemarker, StringTemplate. Added HazelcastInstance option toHazelcast component. Producers from static EIPs such as to is is now also enlisted in JMX when Camel is starting routes. Fixed Issues Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was
[CONF] Apache Camel Articles
Claus Ibsen edited the page: Articles ... Wanna try our Apache Camel developer tools for Enterprise Integration Patterns? by James Strachan Using NetBeans 7.0 to create a new Apache Camel project shows how to start from scratch in NetBeans to setup a Apache Camel project (tutorial style with screenshots) Using NetBeans 7.0 to create a new Apache Camel project without Spring dependency shows how to start from scratch in NetBeans to setup a Apache Camel project (tutorial style with screenshots) without any Spring dependency Integrating Apache Camel with JBoss ESB by Edgar Ankiewsky Combining ApacheCamel+BSF to make JBoss ESB polyglot by Edgard Ankiewsky Silva Implementing Fuji integration scenario using Camel SE by Louis Polycarpou An IRC alerter written using Apache Camel and Java how to easily integrate IRC with Camel to monitor and do alerts. Things to consider when selecting between Apache Camel and Apache Servicemix by Ashwin Karpe A jira notification system for irc using Camel by Guillaume Nodet Camel + Smooks from the official Smooks blog about Smooks integration Camel out of the box. Getting Started with Apache Camel and prepare for Apache ServiceMix deployment by Magnus K Karlsson Smooks OSGI: Camel, UN/EDIFACT, ServiceMix shows how to use Smooks with Camel running in the Apache ServieMix OSGi container. ServiceMix bridge to IBM WebSphereMQ how to bridge ActiveMQ and IBM WebSphereMQ with Camel running inside Apache ServiceMix 4.x (OSGi based). Camel integration with Oracle WebLogic JMS by Lowry Curry Camel integration with WebSphere MQ by Lowry Curry jBPM5/Drools Apache Camel integration a blog entry talking about JBMP5/Drools integration with Apache Camel. Use remote EJB in Camel routes by Jean-Baptiste Onofr Use Camel, CXF and Karaf to implement batches by Jean-Baptiste Onofr explains how to control a Camel route from another route and a JAX-RS server using CXF, package into an OSGi bundle ready to run in Apache Karaf. Karaf Tutorial Part 5 - Running Apache Camel integrations in OSGi by Christian Schneider Unit testing OSGi Blueprint with Apache Camel made easier - Blog post how Camel Testing with OSGi blueprint became much much easier, than having to resort to use pax exam. Communication between two remote Camel routes using Apache Karaf Cellar by Jean-Baptiste Onofr How to Start/Stop Camel Routes on an ActiveMQ Slave - by Jason Sherman Article about testing WMB - This article shows a hands-on approach of how you can test your IBM WebSphere Message Broker solutions in a
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... camel-ahc-ws camel-atmosphere-websocket camel-barcode camel-box camel-openshift camel-gora camel-spark-rest ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Java 1.6 no longer supported. Unit testing with Spring 3.x now requires using camel-test-spring3, as camel-test-spring is for Spring 4.x Getting the Distributions ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... camel-ahc-ws camel-atmosphere-websocket camel-barcodecamel-box camel-openshift camel-gora camel-spark-rest ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Bindy
Claus Ibsen edited the page: Bindy ... Parameter name type Info pos int mandatory - digit number starting from 1 to ... pattern string optional - default value = - will be used to format Decimal, Date, ... length int optional - represents the length of the field for fixed length format precision int optional - represents the precision to be used when the Decimal number will be formatted/parsed pattern string optional - default value = - is used by the Java Formater formatter (SimpleDateFormat by example) to format/validate data. If using pattern, then setting locale on bindy data format is recommended. Either set to a known locale such as us or use default to use platform default locale. Notice that default requires Camel 2.14/2.13.3/2.125. position int optional - must be used when the position of the field in the CSV generated must be different compare to pos required boolean optional - default value = false
[CONF] Apache Camel Multicast
Claus Ibsen edited the page: Multicast ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{strategyRef}} | | Refers to an [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] to be used to assemble the replies from the multicasts, into a single outgoing message from the [Multicast]. By default Camel will use the last reply as the outgoing message. From *Camel 2.12* onwards you can also use a POJO as the {{AggregationStrategy}}, see the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodName}} | | *Camel 2.12:* This option can be used to explicit declare the method name to use, when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodAllowNull}} | {{false}} | *Camel 2.12:* If this option is {{false}} then the aggregate method is not used if there was no data to enrich. If this option is {{true}} then {{null}} values is used as the {{oldExchange}} (when no data to enrich), when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{parallelProcessing}} | {{false}} | If enablesenabled then sending messages to the multicasts occurs concurrently. Note the caller thread will still wait until all messages has been fully processed, before it continues. Its only the sending and processing the replies from the multicasts which happens concurrently. | | {{parallelAggregate}} | {{false}} | *Camel 2.14:* If enabled then the {{aggregate}} method on {{AggregationStrategy}} can be called concurrently. Notice that this would require the implementation of {{AggregationStrategy}} to be implemented as thread-safe. By default this is {{false}} meaning that Camel synchronizes the call to the {{aggregate}} method. Though in some use-cases this can be used to archive higher performance when the {{AggregationStrategy}} is implemented as thread-safe. | | {{executorServiceRef}} | | Refers to a custom [Thread Pool|Threading Model] to be used for parallel processing. Notice if you set this option, then parallel processing is automatic implied, and you do not have to enable that option as well. | | {{stopOnException}} | {{false}} | *Camel 2.2:* Whether or not to stop continue processing immediately when an exception occurred. If disable, then Camel will send the message to all multicasts regardless if one of them failed. You can deal with exceptions in the [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] class where you have full control how to handle that. | | {{streaming}} | {{false}} | If enabled then Camel will process replies out-of-order, eg in the order they come back. If disabled, Camel will process replies in the same order as multicasted. | | {{timeout}} | | *Camel 2.5:* Sets a total timeout specified in millis. If the [Multicast] hasn't been able to send and process all replies within the given timeframe, then the timeout triggers and the [Multicast] breaks out and continues. Notice if you provide a [TimeoutAwareAggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/TimeoutAwareAggregationStrategy.html] then the
[CONF] Apache Camel Splitter
Claus Ibsen edited the page: Splitter ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{strategyRef}} | | Refers to an [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] to be used to assemble the replies from the sub-messages, into a single outgoing message from the [Splitter]. See the defaults described below in _[What the Splitter returns|#WhattheSplitterreturns]_. From *Camel 2.12* onwards you can also use a POJO as the {{AggregationStrategy}}, see the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodName}} | | *Camel 2.12:* This option can be used to explicit declare the method name to use, when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodAllowNull}} | {{false}} | *Camel 2.12:* If this option is {{false}} then the aggregate method is not used for the very first splitted message. If this option is {{true}} then {{null}} values is used as the {{oldExchange}} (for the very first message splitted), when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{parallelProcessing}} | {{false}} | If enabled then processing the sub-messages occurs concurrently. Note the caller thread will still wait until all sub-messages has been fully processed, before it continues. | | {{parallelAggregate}} | {{false}} | *Camel 2.14:* If enabled then the {{aggregate}} method on {{AggregationStrategy}} can be called concurrently. Notice that this would require the implementation of {{AggregationStrategy}} to be implemented as thread-safe. By default this is {{false}} meaning that Camel synchronizes the call to the {{aggregate}} method. Though in some use-cases this can be used to archive higher performance when the {{AggregationStrategy}} is implemented as thread-safe. | | {{executorServiceRef}} | | Refers to a custom [Thread Pool|Threading Model] to be used for parallel processing. Notice if you set this option, then parallel processing is automatically implied, and you do not have to enable that option as well. | | {{stopOnException}} | {{false}} | *Camel 2.2:* Whether or not to stop continue processing immediately when an exception occurred. If disable, then Camel continue splitting and process the sub-messages regardless if one of them failed. You can deal with exceptions in the [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] class where you have full control how to handle that. | | {{streaming}} | {{false}} | If enabled then Camel will split in a streaming fashion, which means it will split the input message in chunks. This reduces the memory overhead. For example if you split big messages its recommended to enable streaming. If streaming is enabled then the sub-message replies will be aggregated out-of-order, eg in the order they come back. If disabled, Camel will process sub-message replies in the same order as they where splitted. | | {{timeout}} | | *Camel 2.5:* Sets a total timeout specified in millis. If the [Recipient List] hasn't been able to split and process all replies within the given timeframe, then the timeout triggers and the [Splitter] breaks
[CONF] Apache Camel Recipient List
Claus Ibsen edited the page: Recipient List ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{delimiter}} | {{,}} | Delimiter used if the [_expression_] returned multiple endpoints. *Camel 2.13* can be disabled using false | | {{strategyRef}} | | An [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] that will assemble the replies from recipients into a single outgoing message from the [Recipient List]. By default Camel will use the last reply as the outgoing message. From *Camel 2.12* onwards you can also use a POJO as the {{AggregationStrategy}}, see the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodName}} | | *Camel 2.12:* This option can be used to explicit declare the method name to use, when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{strategyMethodAllowNull}} | {{false}} | *Camel 2.12:* If this option is {{false}} then the aggregate method is not used if there was no data to enrich. If this option is {{true}} then {{null}} values is used as the {{oldExchange}} (when no data to enrich), when using POJOs as the {{AggregationStrategy}}. See the [Aggregate|Aggregator2] page for more details. | | {{parallelProcessing}} | {{false}} | *Camel 2.2:* If enabled, messages are sent to the recipients concurrently. Note that the calling thread will still wait until all messages have been fully processed before it continues; it's the sending and processing of replies from recipients which happens in parallel. | | {{parallelAggregate}} | {{false}} | *Camel 2.14:* If enabled then the {{aggregate}} method on {{AggregationStrategy}} can be called concurrently. Notice that this would require the implementation of {{AggregationStrategy}} to be implemented as thread-safe. By default this is {{false}} meaning that Camel synchronizes the call to the {{aggregate}} method. Though in some use-cases this can be used to archive higher performance when the {{AggregationStrategy}} is implemented as thread-safe. | | {{executorServiceRef}} | | *Camel 2.2:* A custom [Thread Pool|Threading Model] to use for parallel processing. Note that enabling this option implies parallel processing, so you need not enable that option as well. | | {{stopOnException}} | {{false}} | *Camel 2.2:* Whether to immediately stop processing when an exception occurs. If disabled, Camel will send the message to all recipients regardless of any individual failures. You can process exceptions in an [AggregationStrategy|http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/processor/aggregate/AggregationStrategy.html] implementation, which supports full control of error handling. | | {{ignoreInvalidEndpoints}} | {{false}} | *Camel 2.3:* Whether to ignore an endpoint URI that could not be resolved. If disabled, Camel will throw an exception identifying the invalid endpoint URI. | | {{streaming}} | {{false}} | *Camel 2.5:* If enabled, Camel will process replies out-of-order - that is, in the order received in reply from each recipient. If disabled, Camel will process replies in the same order as specified by the [_expression_]. | | {{timeout}} | | *Camel 2.5:* Specifies a processing timeout milliseconds. If the [Recipient List]
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Support for running on Java 1.8 JVMs Spring 4.x supported. Simple language defined in routes using resultType as boolean is now evaluated as predicate instead of as _expression_. Introduced RuntimeEndpointRegistry to capture runtime usage of endpoints in use during routing, such as dynamic endpoints from dynamic EIPs. Added event notification for routes added and removed. Allow to configure cache size in Recipient List, Routing Slip and Dynamic Router EIPs; and as well turn caching off. Netty HTTPproducer now supports the CamelHttpPath header to define a dynamic context-path and query parameters to call the remote http server. Polling Consumerallows to configure initial queue size and whether to block when full when using the defaultEventDrivenPollingConsumer which most components does. We now block by default, as otherwise the message may be lost if the queue was full, and a new message was offered. Added a generic callback to configure the APNS service builder. AddedStreamList option to theJDBC component Allow to define Simple expressions for sql parameters of the SQL component. A new XML tokenizer that is truly XML-aware (e.g., supporting XML namespaces and complex hierarchical structures) Added optionparallelAggregate to Multicast, Splitter and Recipient ListEIPs Fixed Issues Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was referring to a type that was class annotated. FixedMyBatisto keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters. Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle.
[CONF] Apache Camel File2
Claus Ibsen edited the page: File2 ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{initialDelay}} | {{1000}} | Milliseconds before polling the file/directory starts. | | {{delay}} | {{500}} | Milliseconds before the next poll of the file/directory. | | {{useFixedDelay}} | | Controls if fixed delay or fixed rate is used. See [ScheduledExecutorService|http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html] in JDK for details. In *Camel 2.7.x* or older the default value is {{false}}. From *Camel 2.8* onwards the default value is {{true}}. | | {{runLoggingLevel}} | {{TRACE}} | *Camel 2.8:* The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. | | {{recursive}} | {{false}} | If a directory, will look for files in all the sub-directories as well. | | {{delete}} | {{false}} | If {{true}}, the file will be deleted *after* it is processed successfully. | | {{noop}} | {{false}} | If {{true}}, the file is not moved or deleted in any way. This option is good for readonly data, or for [ETL] type requirements. If {{noop=true}}, Camel will set {{idempotent=true}} as well, to avoid consuming the same files over and over again. | | {{preMove}} | {{null}} | [_expression_] (such as [File Language]) used to dynamically set the filename when moving it *before* processing. For example to move in-progress files into the {{order}} directory set this value to {{order}}. | | {{move}} | {{.camel}} | [_expression_] (such as [File Language]) used to dynamically set the filename when moving it *after* processing. To move files into a {{.done}} subdirectory just enter {{.done}}. | | {{moveFailed}} | {{null}} | [_expression_] (such as [File Language]) used to dynamically set a different target directory when moving files _in case of_ processing (configured via {{move}} defined above) failed. For example, to move files into a {{.error}} subdirectory use: {{.error}}. Note: When moving the files to the “fail” location Camel will *handle* the error and will not pick up the file again. | | {{include}} | {{null}} | Is used to include files, if filename matches the regex pattern. | | {{exclude}} | {{null}} | Is used to exclude files, if filename matches the regex pattern. | | {{antInclude}} | {{null}} | *Camel 2.10:* Ant style filter inclusion, for example {{antInclude=\*}}{{{}*/*{}}}{{.txt}}. Multiple inclusions may be specified in comma-delimited format. See [below|#Filtering using ANT path matcher] for more details about ant path filters. | | {{antExclude}} | {{null}} | *Camel 2.10:* Ant style filter exclusion. If both {{antInclude}} and {{antExclude}} are used, {{antExclude}} takes precedence over {{antInclude}}. Multiple exclusions may be specified in comma-delimited format. See [below|#Filtering using ANT path matcher] for more details about ant path filters. | | {{antFilterCaseSensitive}} | {{true}} | *Camel 2.11:* Ant style filter which is case sensitive or not. | | {{idempotent}} | {{false}} | Option to use the [Idempotent Consumer] EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If {{noop=true}} then idempotent will be enabled as well to avoid consuming the same files over and over again. | | {{idempotentKey}} |
[CONF] Apache Camel Articles
Claus Ibsen edited the page: Articles ... Archived Webinars and Screencasts Integration using Apache Camel and Groovy (June 2014) by Claus Ibsen, presenting Camel, Groovy, and hawtio at gr8conf 2014. Effective System Integrations with Apache Camel (March 2014) by Jakub Korab Getting started with Apache Camel video from BarcelonaJUG (January 2014) by Claus Ibsen Camel in the cloud demo from CamelOne 2013 - Video presentation from CamelOne 2013 demonstrating Camel in the cloud using Fuse Fabric and hawtio Getting started with Apache Camel - Video presentation from Javagruppen meeting by Claus Ibsen (May 2013) Apache Camel Essential Components by Christian Posta (January 2013) Leverage Enterprise Integration Patterns with Apache Camel and Twitter by Bruno Borges (JavaOne 2012) Riding the Apache Camel into the cloud James Strachan (QCon 2012) Migrating akka-camel module to Akka 2.x by Peter Gabryanczy (ScalaDays 2012) Confident Data Transfers with Apache Camel Security by Dominik Schadow (JavaOne 2012) CamelOne 2012 Videos - All the videos from the CamelOne 2012 conference (May 2012) JavaOne 2012 - Leverage Enterprise Integration Patterns with Apache Camel and Twitter by Bruno Borges (JavaOne 2012) Using Apache Camel and Java EE in an OSGi World by Jeff Genender and Johan Edstrom (JavaOne 2011) Er Apache Camel riktig valg for deg? Lytt til erfarne Camel spotters by Rune Peter Bjrnstad, and Bjrn Nordlund(September 2011) In the brain of James Strachan, riding the Camel - by James Strachan (August 2011) CamelOne 2011 Video presentations CamelOne 2011 conference (May 2011) What Riding the Camel can make integration easier for you by Claus Ibsen (September 2011) Paris JUG 2011 - Integration with Apache Camel and ESB by Charles Moulliard JEEConf 2011 - What riding the Camel can do to make integration easier for you by Claus Ibsen (May 2011). Belgium JUG 2011 - Integration with Apache ServiceMix and Camel by Charles Moulliard Devoxx 2011 - Introduction to Apache ActiveMQ, ServiceMix, Camel and CXF by Charles Moulliard and Gert Vanthienen Claus Ibsen's Devoxx 2010 talk is all about Apache Camel Introduction to messaging with ActiveMQ at redev 2008 conference by Bruce Snyder James Strachan's Devoxx 2009 talk is mostly about Camel and ActiveMQ ScreenCast: an introduction to Apache Camel and the use of Enterprise Integration Patterns in Medium
[CONF] Apache Camel Spark-rest
Claus Ibsen edited the page: Spark-rest Spark-rest Component Available as of Camel 2.14 The Spark-rest component allows to define REST endpoints using the Spark REST Java library which has a nice DSL. ... Code Block xml dependency groupIdorg.apache.camel/groupId artifactIdcamel-sparkspark-rest/artifactId version${camel-version}/version /dependency URI format Code Block spark-rest://verb:path?[options] URI Options Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | verb | | get, post, put, patch, delete, head, trace, connect, or options. | | path | | the content path which support Spark syntax. See further below for examples. | | accept | */* | accept type such as: 'text/xml', or 'application/json'. By default we
[CONF] Apache Camel Camel 2.14.0 Release
Claus Ibsen edited the page: Camel 2.14.0 Release ... Timer consumer is now scheduled after CamelContext has started all routes, to ensure other routes is running when timer routes is triggered to run. Netty HTTP now returns HTTP status 404 if resource not found instead of 503. Fixed the MongoDBreadPreferenceoption which used to cause an IllegalArgumentExceptionto be thrown. Fixed issue with Netty producer may leak HashWhealTimer instances when having many producers that are not reused. Fixed issue with Netty consumer should wait for join to complete when joining a multicast group over UDP Improved stability when testing withcamel-test-blueprint component. Netty HTTPnow removes headerFilterStrategy option after resolvingit Fixed POJO aggregating when the parameter type was referring to a type that was class annotated. FixedMyBatisto keep the message body as-is when calling stored procedures, if the procedure returns data as OUT parameters. Fixed Camel Karaf commands to work with multiple CamelContext from the same bundle. Fixed Advice-With to work with transacted routes defined in XML DSL Fixed Advice-With to work with Content Based Router when adding outputs to the when clauses. New Enterprise Integration Patterns ... camel-ahc-ws camel-atmosphere-websocket camel-box camel-openshift camel-gora camel-sparkspark-rest New Camel Maven Archetypes ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Spark-rest
Claus Ibsen edited the page: Spark-rest ... Code Block spark-rest://verb:path?[options] URI Options Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | verb | | get, post, put, patch, delete, head, trace, connect, or options. | | path | | the content path which support Spark syntax. See further below for examples. | | accept | */* | accept type such as: 'text/xml', or 'application/json'. By default we accept all kinds of types. | {div} Path using Spark syntax The path option is defined using a Spark REST syntax where you define the REST context path using support for parameters and splat. See more details at the Spark Java Route documentation. ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel File2
Claus Ibsen edited the page: File2 ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | {{initialDelay}} | {{1000}} | Milliseconds before polling the file/directory starts. | | {{delay}} | {{500}} | Milliseconds before the next poll of the file/directory. | | {{useFixedDelay}} | | Controls if fixed delay or fixed rate is used. See [ScheduledExecutorService|http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html] in JDK for details. In *Camel 2.7.x* or older the default value is {{false}}. From *Camel 2.8* onwards the default value is {{true}}. | | {{runLoggingLevel}} | {{TRACE}} | *Camel 2.8:* The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that. | | {{recursive}} | {{false}} | If a directory, will look for files in all the sub-directories as well. | | {{delete}} | {{false}} | If {{true}}, the file will be deleted *after* it is processed successfully. | | {{noop}} | {{false}} | If {{true}}, the file is not moved or deleted in any way. This option is good for readonly data, or for [ETL] type requirements. If {{noop=true}}, Camel will set {{idempotent=true}} as well, to avoid consuming the same files over and over again. | | {{preMove}} | {{null}} | [_expression_] (such as [File Language]) used to dynamically set the filename when moving it *before* processing. For example to move in-progress files into the {{order}} directory set this value to {{order}}. | | {{move}} | {{.camel}} | [_expression_] (such as [File Language]) used to dynamically set the filename when moving it *after* processing. To move files into a {{.done}} subdirectory just enter {{.done}}. | | {{moveFailed}} | {{null}} | [_expression_] (such as [File Language]) used to dynamically set a different target directory when moving files _in case of_ processing (configured via {{move}} defined above) failed. For example, to move files into a {{.error}} subdirectory use: {{.error}}. Note: When moving the files to the “fail” location Camel will *handle* the error and will not pick up the file again. | | {{include}} | {{null}} | Is used to include files, if filename matches the regex pattern. | | {{exclude}} | {{null}} | Is used to exclude files, if filename matches the regex pattern. | | {{antInclude}} | {{null}} | *Camel 2.10:* Ant style filter inclusion, for example {{antInclude=\*}}{{{}*/*{}}}{{.txt}}. Multiple inclusions may be specified in comma-delimited format. See [below|#Filtering using ANT path matcher] for more details about ant path filters. | | {{antExclude}} | {{null}} | *Camel 2.10:* Ant style filter exclusion. If both {{antInclude}} and {{antExclude}} are used, {{antExclude}} takes precedence over {{antInclude}}. Multiple exclusions may be specified in comma-delimited format. See [below|#Filtering using ANT path matcher] for more details about ant path filters. | | {{antFilterCaseSensitive}} | {{true}} | *Camel 2.11:* Ant style filter which is case sensitive or not. | | {{idempotent}} | {{false}} | Option to use the [Idempotent Consumer] EIP pattern to let Camel skip already processed files. Will by default use a memory based LRUCache that holds 1000 entries. If {{noop=true}} then idempotent will be enabled as well to avoid consuming the same files over and over again. | | {{idempotentKey}} |
[CONF] Apache Camel Blueprint Testing
Claus Ibsen edited the page: Blueprint Testing ... Available as of Camel 2.10 Info camel-test-blueprint does only support testing one CamelContext. So if you have 2 or more CamelContexts in your blueprint XML files, then first found CamelContext is used during testing. Testing is a crucial part of any development or integration work. Camel supports the definition of Blueprint routes, but given Blueprint is an OSGi specific technology, writing unit tests is quite difficult. This library leverages PojoSR which provides a service registry without using a fully compliant OSGi container. This allows defining real unit tests (as opposed to integration tests using Pax Exam. Please make sure all test jars in you class path are OSGi bundle. Wiki Markup {snippet:lang=java|id=example|url=""> ... View Online Like View Changes Stop watching space Manage Notifications This message was sent by Atlassian Confluence 5.0.3, Team Collaboration Software
[CONF] Apache Camel Spark
Claus Ibsen edited the page: Spark ... Wiki Markup {div:class=confluenceTableSmall} || Name || Default Value || Description || | verb | | GETget, POSTpost, DELETEput, etcpatch, delete, head, trace, connect, or options. | | path | | the content path which support Spark syntax. See further below for examples. | | accept | */* | accept type such as: 'text/xml', or 'application/json'. By default we accept all kinds of types. | {div} Path using Spark syntax The path option is defined using a Spark syntax where you define the REST context path using support for parameters and splat. See more details at the Spark Route documentation. The following is a Camel route using a fixed path Code Block from(spark:get:hello) .transform().constant(Bye World); And the following route uses a parameter which is mapped to a Camel header with the key me. Code Block from(spark:get:hello/:me) .transform().simple(Bye ${header.me}); Mapping to Camel Message The Spark Request object is mapped to a Camel Message as aorg.apache.camel.component.spark.SparkMessage which has access to the raw Spark request using the getRequest method. By default the Spark body is mapped to Camel message body, and any HTTP headers / Spark parameters is mapped to Camel Message headers. There is special support for the Spark splat syntax, which is mapped to the Camel message header with key splat. For example the
[CONF] Apache Camel Bindy
Claus Ibsen edited the page: Bindy ... Parameter name type Info pos int mandatory - digit number starting from 1 to ... pattern string optional - default value = - will be used to format Decimal, Date, ... length int optional - represents the length of the field for fixed length format precision int optional - represents the precision to be used when the Decimal number will be formatted/parsed pattern string optional - default value = - is used by the Java Formater (SimpleDateFormat by example) to format/validate data position int optional - must be used when the position of the field in the CSV generated must be different compare to pos required boolean optional - default value = false trim boolean optional - default value =