Hi Jason

Welcome to the Camel community.

There is a few Camel component which uses Spring Framework as a 3rd
party API. On top of my head its
- jms
- mail
- xslt
- velocity
- freemarker
- stringtemplate

And for using JMX you need some Spring JARs for the Spring JMX annotations.

I am about to put up a discussion on @dev about reducing dependency on
Spring when not needed by Camel or the end user runs in an environment
where he dont use Spring as a corner stone.

A member of the community have already supplied patches for the mail
component to be able to use that without Spring. There is a JIRA
ticket.

Likewise the last 4 components on that list, can be migrated in Camel
2.9 as frankly loading template/resource files in OSGi blueprint don't
work well with Spring. So we had to add an adapter to make that run.

That leaves us with JMX and jms component. For JMX we should move the
support for Spring JMX annotations into the camel-spring component so
end users can still use those Spring JMX annotations if they like to
decorate their custom Camel components. The camel-core would then be
able to run JMX without the Spring JMX annotations on the classpath.

That leaves us back with the component you asked about the jms. It
uses the Spring DefaultMessageListenerContainer for consuming
messages. Currently we don't have an alternative in the short term.

I could imagine that we may want to build a new jms component that is
more light-weight, has less features, but don't depend on Spring or
any other 3rd party JARs. Frankly the JMS component seems to have to
many features etc. Just look at the options table (many of the options
origins from spring-jms)
http://camel.apache.org/jms

Feedback, ideas and contributions is of course much welcome
http://camel.apache.org/contributing.html





On Wed, Jul 13, 2011 at 6:19 AM, Jason Dillon <[email protected]> wrote:
> Is there an alternative to camel-jms which doesn't depend on spring?  Looks 
> like using camel-jms pulls in most of the core spring dependencies... a pity 
> when an application is not using spring itself (say instead using Guice 
> instead).
>
> I've not tried it yet, but I'm assuming that it will work outside of spring 
> (ie. not booting the app+camel context up in a real spring container)... so 
> its really just extra unneeded bytes laying around in the jvm that bother me.
>
> --jason



-- 
Claus Ibsen
-----------------
FuseSource
Email: [email protected]
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to