Giter Club home page Giter Club logo

wildfly-camel's Introduction

WildFly Camel

QA Default License Maven Central Join the chat at freenode:wildfly-camel

Open workspace in Eclipse Che

Provides Apache Camel integration with the WildFly Application Server.

The WildFly-Camel Subsystem allows you to add Camel Routes as part of the WildFly configuration. Routes can be deployed as part of Jarkarta EE applications. Jarkarta EE components can access the Camel Core API and various Camel Component APIs.

Your Enterprise Integration Solution can be architected as a combination of Jarkarta EE and Camel functionality.

Documentation

The docs are generated using Asciidoctor.

To generate an update of the docs use:

$ mvn clean install -f docs

If you like to contribute to the docs, please file a pull request against the master branch.

Running Examples

The wildfly-camel-examples are also available on Eclipse Che.

Open workspace in Eclipse Che

System Requirements

Java

Minimum of Java 1.8, to run WildFly and Maven.

Maven

Minimum of Maven 3.2.3.

Build

The default build is straight forward

$ mvn clean install

The extended build includes the set of Jarkarta EE integration examples

$ mvn clean install -Dts.all

If you like to contribute to the project, please file a pull request.

Install

Simply apply the wildfly-camel-patch to a compatible wildfly version.

Run

In your WildFly home directory run ...

$ bin/standalone.sh -c standalone-camel.xml

Docker

To setup OpenShift Origin with an integrated Docker environment, follow the instructions here.

Then simply run the docker image like this ...

$ docker run --rm -ti -p 9990:9990 -p 8080:8080 -e WILDFLY_MANAGEMENT_USER=admin -e WILDFLY_MANAGEMENT_PASSWORD=admin wildflyext/wildfly-camel

Access WildFly Management Console at https://10.2.2.2:8443/console and the Hawtio console at http://10.2.2.2:8080/hawtio

wildfly-camel's People

Contributors

apupier avatar chirino avatar christian-posta avatar fbolton avatar grgrzybek avatar igarashitm avatar jamesnetherton avatar lburgazzoli avatar lechique avatar mmelko avatar oscerd avatar ppalaga avatar tadayosi avatar tdiesler avatar tplevko avatar vkamble60 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wildfly-camel's Issues

Insight Camel integration

It is planned to integrate insight-camel from Fabric8 as a portable component that runs on Gravia. Storage is delegated to elastic search. Hawt.io plugin via Kibana

Find a common way to lookup camel contexts

Currently there is a CamelContextRegistry which provides a view of contexts that were deployed to wildfly. It does not see contexts that were created through the DSL nor CDI contexts

Provide camel-cdi integration

Verify that the camel-cdi component integrates with our cdi subsystem and that it actually works when a cdi/camel deployment gets processed by our DUPs. When such a thing gets deployed, the camel context and its associated routes must work with the components all wired together. I suspect there is work to be done at the DUP level.

https://issues.jboss.org/browse/WFCAM-11

Allow examples to run with/without camel subsystem

The packaging of test deployments and server startup options differ depending on whether the subsystem is installed or not.

For example, with the camel subsystem (CSS) in place we cannot package the camel-cdi component with the CDI example WAR

Define content and format of the Camel subsystem configuration

We currently support camel system context definitions like this

<subsystem xmlns="urn:jboss:domain:camel:1.0">
      <camelContext id="system-context-1">
        <![CDATA[
        <route>
          <from uri="direct:start"/>
          <transform>
            <simple>Hello #{body}</simple>
          </transform>
        </route>
        ]]>
      </camelContext>
   </subsystem>

Provide camel subsystem as feature pack

WildFly is moving towards a provisioning system based on feature packs. This is also important for a container based approach like wildfly-swarm

For this to work, smartics would need to be directed to generate modules.xml files that contain

<artifact name="${org.hibernate:hibernate-core}"/>

instead of

<resource-root name="hibernate-core-1.2.3.jar"

For details see Wildfly Build Process

support expressions in subsystem configuration

We currently support camel system context definitions like this

   <subsystem xmlns="urn:jboss:domain:camel:1.0">
      <camelContext id="system-context-1">
        <![CDATA[
        <route>
          <from uri="direct:start"/>
          <transform>
            <simple>Hello #{body}</simple>
          </transform>
        </route>
        ]]>
      </camelContext>
   </subsystem>

This uses a substitution hack for $

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.