Are there any known issues with using Scala with Apache Camel?

I know that there is Scala DSL support for Camel. Besides,

  • Is it realistic to completely replace the Java language (language) with Scala for a Camel-based project?

  • It is known what known problems exist?

  • What workarounds exist for these issues (other than using Java)?

Mostly I'm looking for a less boiler room code.

+6
java scala apache-camel
source share
3 answers

Akka offers stable Scala-idiomatic Camel integration .

The aka-camel module allows actors, untyped actors and typed participants to receive and send messages through a great variety of protocols and APIs. This section gives a brief overview of the general ideas behind the acca-camel module, the remaining sections are details. In addition to Scala and the Java API, actors can now exchange messages with other systems with lots of channels and APIs such as HTTP, SOAP, TCP, FTP, SMTP or JMS, to mention a few. At the time, approximately 80 protocols and APIs are supported.

In addition, I am sure that this replacement is possible due to good interaction, and there can hardly be any Scala problems that are not peculiar to Java. For example, Akka Actors used to publish / consume Camel endpoints are based on java.util.concurrency, and the only problem I can think of is a bug fix in the library.

+8
source share

Meanwhile, a relatively simple Scala DSL was developed for Camel , which should have Java DSL functionality .

To decide how realistic this is for you, consider:
- Quality support IDE support for languages
- Scala difficulty level
- The popularity of the Scala / Java language

- DSL extension options. In Scala, it should be possible (with some Scala magic) to extend DSL (add additional DSL elements)

If you decide to give it a try, it would be great if you shared your experiences with the Apache Camel community with your impressions: code readability , code maintainability , code efficiency , developer satisfaction , code size , number of "man-days" .

+1
source share

Since then (2010-2011) at present (September 2016), a recent initiative has emerged, named after the integration of Akka Streams, codename Alpakka .

We believe that Akka Streams could be a tool for creating a modern alternative to Apache Camel . This will not happen on its own overnight, and it is a call to arms for the community to join us in this mission. Camel's largest asset is its rich set of endpoint components. We would like to see similar endpoints being developed for Akka threads.

See " akka/akka-stream-contrib ".

0
source share

All Articles