{div:style=padding-right:20px;float:left;margin-left:-20px;} !http://camel.apache.org/download.data/camel-box-v1.0-150x200.png! {div} |
{div:style=min-height:200px} {div} |
Welcome to the 2.10.0 release with approximately 483 issues resolved - including new features, improvements, and bug fixes, such as:
camel-test
to camel-test-spring
component.logNamespaces
to the XPath language to have INFO
logging of detected namespaces from message. This can be used to troubleshoot issues where an XPath expression doesn't work as expected (as it's often a namespace conflict).replyToCacheLevelName
option to the JMS component, allowing configuration of cache levels for persistent reply consumers when doing request/reply over JMS. Some message brokers do not work well with caching, so users may need to set this option to CACHE_NONE
.antInclude
and antExclude
options to File and FTP components to make it easier to specify include/exclude filters using ANT syntax.JdbcMessageIdRepository
in the SQL to use custom SQL statements/queries.managementNamePattern
attribute to <camelContext>
to make it very easy to customize and control the JMX naming of the Camel application. See details at Camel JMX. For example, in OSGi environments you can explicitly configure a managementNamePattern
in case you do not want the bundleId as part of MBean names.replyTo
optiontraceEnabled
option to Jetty component so you have control over whether to allow HTTP TRACE calls against your Jetty endpoints.dumpRouteStatsAsXml
methods to JMX to make it easier to get the total performance stats as XML, and in one JMX call.ShutdownPrepared
SPI to allow custom Services (also EIPs) in routes to do custom code in preparation for shutdown.camel-archetype-java
Camel Maven Archetypes is now a pure Java DSL based project (no longer Spring)errorHandlerLoggingLevel
, and errorHandlerLogStackTrace
options to tweak the logging verbosity.messageId
as an MDC logging key.INFO
level.JmsMessage
if you leverage useOriginalMessage
in an onException
definition.mockEndpointsAndSkip
to AdviceWith and the Test KitisDirectory
method on the GenericFile
class can be used to skip unwanted directories, accelerating file consumption.ConsumerTemplate
or a ProducerTemplate
will now stop and shutdown its cache to cleanup any resources which otherwise may not have been reclaimed until shutdown.ConsumerTemplate
.asyncStartListener
to JMS to allow starting JMS consumers (e.g. routes) asynchronously. This can be used to avoid blocking in case the JMS consumer takes long time to establish a connection to the JMS broker.retainFirst
, and retainLast
options to Mock component.TimeoutAwareAggregationStrategy
aggregation strategies.Injector
now performs bean post processing to inject @Produce, @Consume, @EndpointInject fields etc.org.apache.camel.spi.ExceptionHandler
deal with exceptions occurred during acquiring real lock as well. See File page for example of using a custom ExceptionHandler
.LoggingExceptionHandler
.consumer.bridgeErrorHandler
to allow consumers such as File and FTP to use the routing engine Error Handler to deal with exceptions occurring in the consumer (outside the routing engine), for example if having trouble picking up a file from a shared network drive etc. See more details at File page. This option applies to all consumers which extends the DefaultConsumer
from camel-core
.eagerMaxMessagesPerPoll
option to File, and FTP endpoints to allow to do a full sorting of the files and also limit the pool at the same timeunmarshal
operation returns a list of the pojos (and the pojo directly if only 1). Which makes it easier to use/work with.group
option to Tokenizer to make it easier with the Splitter to split by combining N number of parts together, eg splitting files in chunks by N lines combined.ExchangeSendingEvent
to EventNotifier
to emit an event before sending an Exchange to an Endpoint. Then we have events for both before and after.trim
option to Languages in the XML DSL, to control trimming the expression values, to remove the whitespace noise from XML tags.readLock
strategies such as changed, rename and fileLock. For example if you have a clustered environment and have multiple Camel applications pickup files from a shared drive with readLock=changed
.readLock=changed
will now consider zero length file as in progress files.BridgePropertyPlaceholderConfigurer
bean type.org.jsmpp.session.SessionStateListener
to receive callbacks when the session state changed.from(netty).to(netty)
)CompletionAwareAggregationStrategy
to Aggregator EIP as callback when the aggregated exchange is completed.skipSendToEndpoint=true
with a when predicate to only skip sending if the predicate was true.xs:import
in the schema files.UnitOfWork
and will be de-registered from the inflight registry.waitForTaskToComplete=Always
to not hand over on-completion tasks, which otherwise could be processed prematurely.interceptFrom
.charset
was configured on the file endpoint.convertBodyTo
not working internally as transform
and setBody
, by resetting the message type to DefaultMessage
.copy
and an exception occurrednoop=true
is configured.camel-blueprint
and using CamelContextAware
beans for EventNotifier
(and the beans from this list) injecting the CamelContext
which is not ready, causing the blueprint container to hang waiting for the service.setHeader
may be lost if a JMS route uses the Dynamic Router EIPcamel-avro
- for Apache Avro integrationcamel-aws
- for DynamoDB integration within Amazon Web Servicescamel-beanio
- Data Format to map objects to flat structured formatcamel-cdi
- to deploy Apache Camel in CDI container with Dependency Injection (JSR299, 330)camel-core
- new support for "stubbing" endpoints, for development and testing purposescamel-core
- new direct-vm for synchronous messaging between different CamelContext in the same JVM (for example to support transactions, across CamelContexts).camel-fop
- to render messages into different outputs using Apache FOPcamel-gson
- provides a JSON data format using the Google GSON projectcamel-guava-eventbus
- provides a integration bridge between Camel and Google Guava EventBus infrastructure.camel-hbase
- provides integration with HBasecamel-jsch
- Secure Copy using JSCHcamel-mina2
- camel-mina2
is expected to be refactored in Camel 2.11, so use on own risk of having to migrate.camel-mongodb
- for MongoDB integrationcamel-spring-batch
- For using Spring Batch with Camel.camel-ssh
- For executing commands on an SSH servercamel-test-blueprint
- for testing Blueprint routescamel-test-spring
- for testing Spring routescamel-twitter
- for Twitter integrationcamel-websocket
- for WebSocket integrationcamel-avro
- for Apache Avro integrationcamel-beanio
- for mapping objects to flat structured formatcamel-gson
- provides a JSON data format using the Google GSON projectcamel-example-ssh
camel-example-twitter-websocket
- shows how to use Twitter to push live tweet updates to a webpage with Websocketcamel-example-console
- a new beginner example that shows how to read input from the consoleshutdownForced
and forceShutdown
methods to org.apache.camel.spi.ShutdownStrategy
prepareShutdown
on ShutdownAware
errorHandler
method in RouteBuilder
now returns void
, as it's only used for configuring context-scoped error handlers.SimpleLanguage
constructor that takes custom start and end tokens. Instead use the change methods to set custom tokens.onThreadPoolRemove
and onErrorHandlerRemove
methods to LifecycleStrategy
retryWhile(Expression)
on OnExceptionDefinition
; use retryWhile(Predicate)
.corePoolSize
and maxPoolSize
on Netty endpoint, as we rely on Netty default implementation.resourceClasses
option on CXFRS no longer supports the semicolon ( for separating class names. Now only the comma (,) is supported (which is the standard in Camel)tryConvertTo
methods to TypeConverter
, which works as the regular convertTo
methods, by ignoring any exceptions during conversion.convertTo
methods on TypeConverter
now throws TypeConversionException
if an exception occurred during type conversion.getBody(type)
, and getHeader(name, type
methods on Message
now throws TypeConversionException
if an exception occurred during type conversion.trim
option in the XML DSL to remove the white space noise from XML tags.containsSynchronization
to UnitOfWork
and Exchange
to check if a given on completion has already been added to the given exchange.setManagementName
from CamelContext
as it should not be used by Camel end usersisTransactedRedelivered
to ExchangeisDirectory
to GenericFile
ClientPipelineFactory
and ServerPipelineFactory
abstract classes in NettygetStatistics
method to TypeConverterRegistry
, and the registry now extends Service
as well.convertBodyTo
with a charset configured, will not propagate the charset as an Exchange property (Exchange.CHARSET_NAME
), which otherwise may lead to payload being double converted.abort
method to GenericFileProcessStrategy
.camel-mail
now excludes dependency on javax activation JAR as thats embedded in the JVM from JRE6 onwards.onCompletion
or intercept
, etc."mvn site"
). There is no plan to fix this, as the project does not use maven site.camel-test
to camel-test-spring
component.skipSendToEndpoint=true
and when
predicate now triggers conditional skipping (you may have been relying on unconditional skipping up until now)lazyLoadTypeConverter=true
has been deprecated, and will be removed in a future release. The best practice is to load type converters while bootstrapping Camel."camel."
.TypeConversionException
to the caller, from APIs such as TypeConverter
and Message
. For example getBody(type)
on the Message
API.java.beans.PropertyEditor
for type conversion. These are slow, neither thread safe, and using 3rd party JARs on the classpath may cause side effect as if they install java.beans.PropertyEditor
.charset
option on the File component to explicit specify encoding for reading and writing files.camel-cxf
, and camel-spring-ws
requires this to be installable; as well other features may as well.Description | Download Link | PGP Signature file of download |
---|---|---|
Windows Distribution | ||
Unix/Linux/Cygwin Distribution |
The above URLs use the Apache Mirror system to redirect you to a suitable mirror for your download. Some users have experienced issues with some versions of browsers (e.g. some Safari browsers). If the download doesn't seem to work for you from the above URL then try using Firefox |
Description | Download Link | PGP Signature file of download |
---|---|---|
Source Distribution |