Mary Cochran

Recent Posts

Call an existing REST service with Apache Camel K

Call an existing REST service with Apache Camel K

With the release of Apache Camel K, it is possible to create and deploy integrations with existing applications that are quicker and more lightweight than ever. In many cases, calling an existing REST endpoint is the best way to connect a new system to an existing one. Take the example of a cafe serving coffee. What happens when the cafe wants to allow customers to use a delivery service like GrubHub? You would only need to introduce a single Camel K integration to connect the cafe and GrubHub systems.

In this article, I will show you how to create a Camel K integration that calls an existing REST service and uses its existing data format. For the data format, I have a Maven project configured with Java objects. Ideally, you would have this packaged and available in a Nexus repository. For the purpose of my demonstration, I utilized JitPack, which lets me have my dependency available in a repository directly from my GitHub code. See the GitHub repository associated with this demo for the data format code and directions for getting it into JitPack.

Continue reading “Call an existing REST service with Apache Camel K”

Share
Deploy Red Hat AMQ Streams and Fuse on OpenShift Container Platform 4

Deploy Red Hat AMQ Streams and Fuse on OpenShift Container Platform 4

In the following video, I demonstrate how to deploy Red Hat AMQ Streams (based on upstream Apache Kafka) on OpenShift 4.

I will also demonstrate how to use AMQ Streams in a basic way using Red Hat Fuse.  There is a Camel route exposing a REST endpoint at /goodbye, which—when hit—sends a “Goodbye World” message to the topic.  There is also a timer sending “Hello World” messages periodically to the topic.  A separate Camel route consumes from the topic and logs the messages for our visibility.

Continue reading “Deploy Red Hat AMQ Streams and Fuse on OpenShift Container Platform 4”

Share
Unit Testing for Camel Rest DSL and Spring Boot

Unit Testing for Camel Rest DSL and Spring Boot

Hopefully by now, you know how to write your first Rest DSL Camel Route using Spring Boot.  If not, check this post first. Now that you have your route written, it’s time to write a unit test for it.  Many people find Apache Camel unit testing a big struggle to figure out.  Luckily, when using Spring Boot with the Apache Camel Rest DSL testing, a Rest Route isn’t too difficult.

Continue reading “Unit Testing for Camel Rest DSL and Spring Boot”

Share
Writing Your First Camel Spring Boot Project With the Rest DSL

Writing Your First Camel Spring Boot Project With the Rest DSL

Rest services are becoming more and more popular for communication between systems.  Now that Red Hat supports the use of Red Hat JBoss Fuse with Apache Camel Spring Boot, learn how you can get started with the Rest DSL and Spring Boot.  These directions will use the camel-servlet component, although various components can be used.

Continue reading “Writing Your First Camel Spring Boot Project With the Rest DSL”

Share
3Scale Developer Portal Docs Per Application

3Scale Developer Portal Docs Per Application

Having Swagger Documentation in any developer portal is very important for developers to know how to use APIs.  However, not all developers may be using the same applications.  How can you make it so developers only see the docs relevant to them?  Luckily some JavaScript magic can make this possible for the 3Scale developer portal.

Continue reading “3Scale Developer Portal Docs Per Application”

Share
Camel Clustered File Ingestion with JDBC and Spring

Camel Clustered File Ingestion with JDBC and Spring

Reading a file is a common use for Apache Camel. From using a file to kick off a larger route to simply needing to store the file content, the ability to only read a file once is important. This is easy when you have a single server with your route deployed, but what about when you deploy your route to multiple servers. Thankfully, Camel has the concept of an Idempotent Consumer.

Continue reading “Camel Clustered File Ingestion with JDBC and Spring”

Share
Using Clustered Camel Quartz Jobs on JBoss EAP

Using Clustered Camel Quartz Jobs on JBoss EAP

Camel Quartz can be a useful component for jobs that need to run at a particular time every day. Recently on a client site, we had a need for about 15 different jobs that each created a differently formatted file and send each file to a particular destination. While this was straightforward to get setup on a single machine, once we started deploying our camel routes to multiple servers the jobs started to kick off on both machines. To resolve this issue we needed to create a job store.

Continue reading “Using Clustered Camel Quartz Jobs on JBoss EAP”

Share