FYI, if you use FUSE ESB, you can see that we already integrate all camel components, just use
so can see all camel components available,
you can install whatever camel components you want to use then.
About the Windows Service, take a look at wrapper feature here, it also works with FUSE ESB kit.
Camel is part of Fuse ESB. I suggest to check the ESB getting started guide which shows how to start the ESB and install an example which uses Camel.
Chapter 13 in the Camel in Action books covers deployment options which Camel. Among others it shows how to use Camel in JBoss, Tomcat, Karaf:
At the Camel website there is some pieces here and there about deployments
And for OSGi there is a comprehensive guide here
And there is a webinar titled - Apache Camel Deployment Options, you can see. It shows with live coding, AFAIR 3-4 different deployments. The webinar is available from this page
Also there's a camel-osgi example shipped with FUSE ESB kit, from which you can get some basic idea about how to deploy camel router into FUSE ESB.
Thanks for the links, I had actually gone through them all before...which is what led me to write this post in the first place. I jumped from outdated docs on the apache website, to webinars, to forum posts, to references to books, to issue logs and trying to figure out stuff that had nothing to do with Camel code or the simple proof concept I wanted to build.
The beauty of Camel is the simplicity with which you can create powerful integration solutions. However the downside is that at the outset you spend way more time considering deployment options, learning about OSGI, fast forwarding through webinars and working around environment issues that you do learning Camel.
Having an installer that handles stuff like bundling Karaf/Camel, setting env variables, setting it to run as a service, setting up the web console/user/port number would make the intial user experience seamless. This would allow developers to focus on Camel code and worry about the other pieces later.
Tomcat does a great job with this and the components used to make it work all open source: NSIS for the installer and Apache Commons Daemon for the daemon/manager.
Re: Fuse ESB, this may sound minor to you but:
1) The full blown ESB would be overkill for this project. All that is needed is simple routing and transformation. Everything else would be bloat. It would be like running a full J2EE server when all that is need is an embedded Jetty Server.
2) It would be much more difficult for me to get sign off for the project if I told the powers that be that we would need to to download an ESB. That would lead to a whole slew of red tape and evaluations and demos to determine if Fuse is the ESB we want to standardize on. All I wanna do is get some work done. A 10mb framework is much easier to sell than a 70mb ESB; at least it is where I work. Once Camel is through the door, the prospect of using Fuse ESB down the road is greater.
At the end of the day, this is just a suggestion. I unfortunately don't have any free time to embark on such an endeavor myself so I can't put my code where my mouth is. It is up to you guys to take it or leave it.