Tuesday, October 20, 2009

Speaking at TSSJS Europe



Next week, I'll be in Prague at TheServerSide Java Symposium-Europe to talk about Apache ServiceMix 4 and Apache Felix Karaf - we'll take a look at the architecture and design used in ServiceMix 4 and you'll learn how you can build your own container starting with Karaf and adding only those components you need for your own project.

Monday, May 25, 2009

FUSE Open Source Community Day

A few weeks ago Progress organized the FUSE Open Source Community Day in their offices in Rotterdam. This is just a quick note to mention that the presentation slides of that day are now available online at http://fusesource.com/fuse/fuse-osc-day051409/.

Saturday, March 28, 2009

ServiceMix 4.0.0 released


Apache ServiceMix 4.0 is the first release of our OSGi based integration platform.

It includes two major components:
* Apache ServiceMix Kernel: an OSGi runtime with a lot of extra features (SSH connectivity, provisioning enhancements, Spring integration, ...)
* Apache ServiceMix NMR: an OSGi based NMR and JBI container, which also comes with a new clustering engine ready for enterprise deployment

In addition, ServiceMix 4.0 also ships with enhanced ActiveMQ, Camel and CXF integration as well as a whole set of examples to let you leverage this functionality. We also have out-of-the-box support for deploying and running web applications, so they can run together with everything else in the same container. And off course, all you favourite JBI components are now available in ServiceMix 4.0.0 as well.

More information and links to the downloads is available here

Tuesday, March 24, 2009

Apache ServiceMix BOF at ApacheCon Europe

Just a quick note to announce that there is an Apache ServiceMix BOF scheduled at ApacheCon Europe this week. If you're coming to Amsterdam, join us on Thursday evening at 20:30 in room Matterhorn 3.

The full BOF schedule is available at http://wiki.apache.org/apachecon/BirdsOfaFeatherEu09.

Tuesday, January 13, 2009

A better CBR

Implementing a content based router in Camel is very simple. However, this also means that the routing rules are hard-coded in the Camel RouteBuilder.

Building a more dynamic solution is equally simple with the new @RecipientList annotation. You just create bean with a method that returns a (collection of) endpoints. You can off course use other annotations (like the @XPath annotation) to make your work easier.

public class RecipientListService {
@RecipientList
public List getTargets(@XPath("/po/supplier/@id") String id) {
// lookup endpoint(s) in db or config file
}
}

When using Camel inside ServiceMix, you then register this bean in your camel-context.xml file.

<beans>
<camelContext>...

<bean id="RecipientListService" class="be.anova.camel.RecipientListService">
<!-- this is plain Spring so you can inject any db, webservice, ... you need -->
</bean>
</beans>

By using plain Java and a Spring configuration file, we can write any kind of Java code or access any resource (e.g. a database or external config file) to determine the next routing step. This way, we can build a SA that can be reconfigured without redeployment.

An example use case? You can now build a generic PO handling SA. Every time a new supplier wants to receive their PO electronically, you just create a SA with the supplier-specific endpoints and add some config and you're done! You can even keep the config and the endpoints together in a single bundle if you're using ServiceMix 4 and leverage the OSGi registry to hold your configuration data.

And if you wonder what the Camel route itself looks like, it is a simple as it gets:

from("jbi:service:urn:my:service").beanRef("RecipientListService", "getTargets");

Thursday, December 11, 2008

Tutorials

Over the last few weeks, two new tutorials have been added to help people get started with ServiceMix and Camel:

I also had to introduce some people to Apache Maven recently and created these slides. They are available under a Creative Commons license so feel free to download and use them as you see fit!

Sunday, November 2, 2008

... and another release

Just a brief note to help spread the word on the Camel 1.5.0 release. For more details, just check out the release notes or find out what Bruce, Claus or Jon are saying about it.