This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch CAMEL-23648-tui-send-fullscreen in repository https://gitbox.apache.org/repos/asf/camel.git
commit ae7dd51df3b7fe1e201269da2484cd8bfb4f0b67 Author: Claus Ibsen <[email protected]> AuthorDate: Sun May 31 09:33:09 2026 +0200 CAMEL-23648: camel-jbang - Sync bundled examples from camel-jbang-examples repo Extend the sync-example-catalog Maven profile to also download source files for all bundled examples from apache/camel-jbang-examples. Add examples/**/* excludes to both RAT and mycila license plugins so synced files don't need license headers. Co-Authored-By: Claude Opus 4.6 <[email protected]> --- dsl/camel-jbang/camel-jbang-core/pom.xml | 55 ++++++++++- .../resources/examples/circuit-breaker/README.md | 48 ++++++++-- .../src/main/resources/examples/cron-log/README.md | 6 +- .../examples/cron-log/application.properties | 2 + .../examples/cron-log/cron-log.camel.yaml | 6 +- .../src/main/resources/examples/groovy/README.md | 38 +++++++- .../resources/examples/groovy/groovy.camel.yaml | 31 +++---- .../examples/message-size/orders.camel.yaml | 102 +++++++++++++++++++++ .../src/main/resources/examples/rest-api/README.md | 6 +- .../examples/rest-api/rest-api.camel.yaml | 26 ++++-- .../src/main/resources/examples/routes/README.md | 49 ++++++++-- .../resources/examples/routes/routes.camel.yaml | 11 ++- .../main/resources/examples/timer-log/README.md | 4 +- .../examples/timer-log/timer-log.camel.yaml | 11 ++- .../resources/examples/tui-hello-world/README.md | 21 +++++ .../src/main/resources/examples/xslt/README.md | 50 ++++++++-- .../resources/examples/xslt/consumer.camel.yaml | 6 +- pom.xml | 2 + 18 files changed, 394 insertions(+), 80 deletions(-) diff --git a/dsl/camel-jbang/camel-jbang-core/pom.xml b/dsl/camel-jbang/camel-jbang-core/pom.xml index e066af7906a9..b0b9f0c33b89 100644 --- a/dsl/camel-jbang/camel-jbang-core/pom.xml +++ b/dsl/camel-jbang/camel-jbang-core/pom.xml @@ -273,9 +273,60 @@ </goals> <configuration> <target> - <get src="https://raw.githubusercontent.com/apache/camel-jbang-examples/main/camel-jbang-example-catalog.json" - dest="${project.basedir}/src/main/resources/examples/camel-jbang-example-catalog.json" + <property name="examples.base" value="https://raw.githubusercontent.com/apache/camel-jbang-examples/main"/> + <property name="examples.dest" value="${project.basedir}/src/main/resources/examples"/> + <!-- Catalog --> + <get src="${examples.base}/camel-jbang-example-catalog.json" + dest="${examples.dest}/camel-jbang-example-catalog.json" usetimestamp="true"/> + <!-- Bundled examples --> + <macrodef name="sync-example"> + <attribute name="name"/> + <attribute name="file"/> + <sequential> + <mkdir dir="${examples.dest}/@{name}"/> + <get src="${examples.base}/@{name}/@{file}" + dest="${examples.dest}/@{name}/@{file}" + usetimestamp="true"/> + </sequential> + </macrodef> + <!-- circuit-breaker --> + <sync-example name="circuit-breaker" file="README.md"/> + <sync-example name="circuit-breaker" file="route.camel.yaml"/> + <!-- cron-log --> + <sync-example name="cron-log" file="README.md"/> + <sync-example name="cron-log" file="application.properties"/> + <sync-example name="cron-log" file="cron-log.camel.yaml"/> + <!-- groovy --> + <sync-example name="groovy" file="README.md"/> + <sync-example name="groovy" file="application.properties"/> + <sync-example name="groovy" file="groovy.camel.yaml"/> + <!-- message-size --> + <sync-example name="message-size" file="README.md"/> + <sync-example name="message-size" file="orders.camel.yaml"/> + <!-- rest-api --> + <sync-example name="rest-api" file="README.md"/> + <sync-example name="rest-api" file="application.properties"/> + <sync-example name="rest-api" file="rest-api.camel.yaml"/> + <!-- routes --> + <sync-example name="routes" file="Greeter.java"/> + <sync-example name="routes" file="README.md"/> + <sync-example name="routes" file="application.properties"/> + <sync-example name="routes" file="beans.yaml"/> + <sync-example name="routes" file="routes.camel.yaml"/> + <!-- timer-log --> + <sync-example name="timer-log" file="README.md"/> + <sync-example name="timer-log" file="application.properties"/> + <sync-example name="timer-log" file="timer-log.camel.yaml"/> + <!-- tui-hello-world --> + <sync-example name="tui-hello-world" file="README.md"/> + <sync-example name="tui-hello-world" file="tui-hello-world.yaml"/> + <!-- xslt --> + <sync-example name="xslt" file="README.md"/> + <sync-example name="xslt" file="consumer.camel.yaml"/> + <mkdir dir="${examples.dest}/xslt/input"/> + <sync-example name="xslt" file="input/account.xml"/> + <sync-example name="xslt" file="stylesheet.xsl"/> </target> </configuration> </execution> diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/circuit-breaker/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/circuit-breaker/README.md index 9bfb59c16757..2cf9f71fc207 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/circuit-breaker/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/circuit-breaker/README.md @@ -1,35 +1,55 @@ -# Circuit Breaker +## Circuit Breaker This example shows how Camel JBang can use circuit breaker EIP. -## How to run +### Install JBang + +First install JBang according to https://www.jbang.dev + +When JBang is installed then you should be able to run from a shell: + +```sh +$ jbang --version +``` + +This will output the version of JBang. + +To run this example you can either install Camel on JBang via: + +```sh +$ jbang app install camel@apache/camel +``` + +Which allows to run Camel JBang with `camel` as shown below. + +### How to run You can run this example using: ```sh -camel run * +$ camel run * ``` While the Camel integration is running, then from another terminal type: ```sh -camel get circuit-breaker +$ camel get circuit-breaker ``` Which then output the state of the circuit breaker. You can run this command with `--watch` and see how the state of the circuit breaker changes from closed to open due to many failures. ```sh -camel get circuit-breaker --watch +$ camel get circuit-breaker --watch ``` -## Inspecting errors +### Inspecting errors Because the circuit breaker triggers exceptions, you can use `camel get error` to inspect captured routing errors: ```sh -camel get error +$ camel get error ``` This shows a summary table with PID, route, node, exchange ID, exception type and message. @@ -37,11 +57,21 @@ This shows a summary table with PID, route, node, exchange ID, exception type an To see full details of the last error (body, headers, variables, properties, exception and message history): ```sh -camel get error --last +$ camel get error --last ``` You can also pick a specific error by its exchange ID: ```sh -camel get error --id=<exchangeId> --detail +$ camel get error --id=<exchangeId> --detail ``` + +### Help and contributions + +If you hit any problem using Camel or have some feedback, then please +[let us know](https://camel.apache.org/community/support/). + +We also love contributors, so +[get involved](https://camel.apache.org/community/contributing/) :-) + +The Camel riders! diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/README.md index 6bf8e7b5681f..33b5d10a4906 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/README.md @@ -1,7 +1,7 @@ -# Cron Log +## Cron Log -This example shows a scheduled task using a cron expression that logs the current time every 5 seconds. +This example shows a scheduled task that logs the current time every 5 seconds. -## How to run +### How to run camel run cron-log.camel.yaml diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/application.properties b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/application.properties index 9194b486f064..a60bfaac62a6 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/application.properties +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/application.properties @@ -14,5 +14,7 @@ ## See the License for the specific language governing permissions and ## limitations under the License. ## --------------------------------------------------------------------------- +# Timer period in milliseconds +cron.period=5000 # Log message prefix cron.message=Scheduled task running at diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/cron-log.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/cron-log.camel.yaml index b2ad3ff59b74..c67fe724179f 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/cron-log.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/cron-log/cron-log.camel.yaml @@ -18,9 +18,10 @@ - route: id: cron-log from: - uri: cron:tab + uri: timer parameters: - schedule: "0/5 * * * * ?" + timerName: cron + period: "{{cron.period}}" steps: - setBody: expression: @@ -28,3 +29,4 @@ expression: "{{cron.message}} ${date:now:HH:mm:ss}" - log: message: "${body}" + diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/README.md index 46dcc024a0bb..8fbe350f9191 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/README.md @@ -1,4 +1,4 @@ -# Groovy +## Groovy This example shows how to use Groovy with extra dependencies in Camel JBang. @@ -12,12 +12,32 @@ The extra dependency is declared in `application.properties` using the camel.jbang.dependencies=commons-validator:commons-validator:1.10.1 ``` -## How to run +### Install JBang + +First install JBang according to https://www.jbang.dev + +When JBang is installed then you should be able to run from a shell: + +```sh +$ jbang --version +``` + +This will output the version of JBang. + +To run this example you can either install Camel on JBang via: + +```sh +$ jbang app install camel@apache/camel +``` + +Which allows to run Camel JBang with `camel` as shown below. + +### How to run You can run this example using: ```sh -camel run * +$ camel run * ``` To see the invalid email branch, edit `groovy.camel.yaml` and change the `contactEmail` header in the `once` URI to an invalid value: @@ -35,5 +55,15 @@ You can also declare dependencies as a modeline comment at the top of the YAML r Or pass the dependency on the command line: ```sh -camel run groovy.camel.yaml --dep=commons-validator:commons-validator:1.10.1 +$ camel run groovy.camel.yaml --dep=commons-validator:commons-validator:1.10.1 ``` + +### Help and contributions + +If you hit any problem using Camel or have some feedback, then please +[let us know](https://camel.apache.org/community/support/). + +We also love contributors, so +[get involved](https://camel.apache.org/community/contributing/) :-) + +The Camel riders! diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/groovy.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/groovy.camel.yaml index 2b89a31150bb..055e708c4240 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/groovy.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/groovy/groovy.camel.yaml @@ -16,34 +16,27 @@ # - route: - id: route-1681 from: - id: from-1133 uri: once parameters: name: validate steps: - setHeader: - id: setHeader-4262 - constant: - expression: [email protected] name: contactEmail + expression: + constant: + expression: [email protected] - choice: - id: choice-1178 - otherwise: - id: otherwise-1234 - steps: - - log: - id: log-3646 - message: "Invalid email: ${header.contactEmail}" when: - - id: when-1441 + - expression: + groovy: + expression: |- + import org.apache.commons.validator.routines.EmailValidator + EmailValidator.getInstance().isValid(request.headers['contactEmail']) steps: - log: - id: log-2349 message: "Valid contact: ${header.contactEmail}" - groovy: - expression: >- - import org.apache.commons.validator.routines.EmailValidator - - EmailValidator.getInstance().isValid(request.headers['contactEmail']) + otherwise: + steps: + - log: + message: "Invalid email: ${header.contactEmail}" diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/message-size/orders.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/message-size/orders.camel.yaml new file mode 100644 index 000000000000..9b2e0361c3a4 --- /dev/null +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/message-size/orders.camel.yaml @@ -0,0 +1,102 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# Producers: simulate different payload sizes using Content-Length header +- route: + id: small-producer + from: + uri: timer:small + parameters: + period: 2000 + steps: + - setHeader: + name: Content-Length + simple: "${random(100,1023)}" + - setHeader: + name: source + simple: small-producer + - to: + uri: seda:small + +- route: + id: medium-producer + from: + uri: timer:medium + parameters: + period: 3000 + steps: + - setHeader: + name: Content-Length + simple: "${random(8192,18432)}" + - setHeader: + name: source + simple: medium-producer + - setHeader: + name: tracking-id + simple: "TRK-${random(10000,99999)}" + - to: + uri: seda:medium + +- route: + id: large-producer + from: + uri: timer:large + parameters: + period: 5000 + steps: + - setHeader: + name: Content-Length + simple: "${random(10485760,20971520)}" + - setHeader: + name: source + simple: large-producer + - setHeader: + name: tracking-id + simple: "TRK-${random(10000,99999)}" + - setHeader: + name: batch-id + simple: "BATCH-${random(100,999)}" + - setHeader: + name: priority + simple: "${random(1,5)}" + - to: + uri: seda:large + +# Consumers: process messages from each seda endpoint +- route: + id: process-small + from: + uri: seda:small + steps: + - log: + message: "Small: Content-Length=${header.Content-Length}" + +- route: + id: process-medium + from: + uri: seda:medium + steps: + - log: + message: "Medium: Content-Length=${header.Content-Length}" + +- route: + id: process-large + from: + uri: seda:large + steps: + - log: + message: "Large: Content-Length=${header.Content-Length}" diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/README.md index 9ade804eab16..db3dac32b83c 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/README.md @@ -1,12 +1,12 @@ -# REST API +## REST API This example shows a REST API with hello endpoints. -## How to run +### How to run camel run rest-api.camel.yaml -## Try it +### Try it curl http://localhost:8080/api/hello curl http://localhost:8080/api/hello/World diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/rest-api.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/rest-api.camel.yaml index 8bf9e16560e0..0482fc3c0b2d 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/rest-api.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/rest-api/rest-api.camel.yaml @@ -17,22 +17,30 @@ - rest: path: /api - get: - - path: /hello - to: direct:hello - - path: /hello/{name} - to: direct:hello-name + steps: + - get: + path: /hello + - get: + path: "/hello/{name}" - route: id: hello from: - uri: direct:hello + uri: direct + parameters: + name: hello steps: - setBody: - constant: "{{greeting.message}}" + expression: + constant: + expression: "{{greeting.message}}" - route: id: hello-name from: - uri: direct:hello-name + uri: direct + parameters: + name: hello-name steps: - setBody: - simple: "Hello ${header.name} from Camel REST API!" + expression: + simple: + expression: "Hello ${header.name} from Camel REST API!" diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/README.md index 7dc86fc5a31c..16620aabaf08 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/README.md @@ -1,41 +1,72 @@ -# Routes +## Routes This example shows how routes are defined in Yaml. -## How to run +### Install JBang + +First install JBang according to https://www.jbang.dev + +When JBang is installed then you should be able to run from a shell: + +```sh +$ jbang --version +``` + +This will output the version of JBang. + +To run this example you can either install Camel on JBang via: + +```sh +$ jbang app install camel@apache/camel +``` + +Which allows to run Camel JBang with `camel` as shown below. + +### How to run You can run this example using: ```sh -camel run * +$ camel run * ``` Camel will start a route that periodically provides a greeting message. -## Live reload +### Live reload You can run the example in dev mode which allows you to edit the example, and hot-reload when the file is saved. ```sh -camel run * --dev +$ camel run * --dev ``` -## Run directly from GitHub +### Run directly from GitHub The example can also be run directly by referring to the GitHub URL as shown: ```sh -camel run https://github.com/apache/camel-jbang-examples/tree/main/routes +$ camel run https://github.com/apache/camel-jbang-examples/tree/main/routes ``` -## Developer Web Console +### Developer Web Console You can enable the developer console via `--console` flag as show: ```sh -camel run * --console +$ camel run * --console ``` Then you can browse: http://localhost:8080/q/dev to introspect the running Camel Application. Under "beans" Camel should display bean `greeter`. + + +### Help and contributions + +If you hit any problem using Camel or have some feedback, then please +[let us know](https://camel.apache.org/community/support/). + +We also love contributors, so +[get involved](https://camel.apache.org/community/contributing/) :-) + +The Camel riders! diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/routes.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/routes.camel.yaml index a1bfb7dcb291..b22631a8265a 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/routes.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/routes/routes.camel.yaml @@ -18,12 +18,17 @@ - route: id: greeting-route from: - uri: timer:start + uri: timer parameters: + timerName: start period: 1000 steps: - setBody: - simple: I'm ${routeId} + expression: + simple: + expression: "I'm ${routeId}" - bean: ref: greeter - - log: ${body} + - log: + message: "${body}" + diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/README.md index fd5b8ac6199f..f773ce1bad55 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/README.md @@ -1,7 +1,7 @@ -# Timer Log +## Timer Log This example shows a simple timer that logs a hello message every second. -## How to run +### How to run camel run timer-log.camel.yaml diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/timer-log.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/timer-log.camel.yaml index 6a40ad378d2e..291f22895d28 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/timer-log.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/timer-log/timer-log.camel.yaml @@ -18,10 +18,15 @@ - route: id: timer-log from: - uri: timer:tick + uri: timer parameters: + timerName: tick period: "{{timer.period}}" steps: - setBody: - simple: "{{greeting.message}}" - - log: "${body}" + expression: + simple: + expression: "{{greeting.message}}" + - log: + message: "${body}" + diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/tui-hello-world/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/tui-hello-world/README.md new file mode 100644 index 000000000000..faac9275543c --- /dev/null +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/tui-hello-world/README.md @@ -0,0 +1,21 @@ +## TUI Hello World + +A simple example to try the TUI Send Message feature. + +On startup, a welcome message is logged once. The `greet` route listens on `direct:greet` and replies with a greeting. + +### How to run + + camel run tui-hello-world.yaml + +### Send a message via TUI + + camel tui + +Select the integration, press `F2`, choose `Send Message`, type your name (e.g. `World`), and press Enter. + +Toggle the mode to `InOut` to see the reply (`Hello World!`). + +### Send a message via CLI + + camel cmd send tui-hello-world --endpoint=direct:greet --body=World diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/README.md b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/README.md index ec989f624348..0b84da586f8c 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/README.md +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/README.md @@ -1,31 +1,61 @@ -# XSLT Transformation +## XSLT Transformation This example shows a basic XML transformation using XSLT style sheet. -## How to run +### Install JBang -You can run this example using: +First install JBang according to https://www.jbang.dev + +When JBang is installed then you should be able to run from a shell: ```sh -camel run * +$ jbang --version ``` -This reads the XML input file from `./input/account.xml` and applies XSL transformation. +This will output the version of JBang. -## Live updates of message transformation +To run this example you can either install Camel on JBang via: -You can do live changes to the stylesheet and see the output in real-time with Camel JBang by running: +```sh +$ jbang app install camel@apache/camel +``` + +Which allows to run Camel JBang with `camel` as shown below. + +### How to run + +Then you can run this example using: ```sh -camel transform message --body=file:input/account.xml --component=xslt --template=file:stylesheet.xsl --pretty --watch +$ camel run * +``` + +This reads the XML input file from _./input/account.xml_ and applies XSL transformation. + +### Live updates of message transformation + +You can do live changes to the stylesheet and see the output in real-time with Camel JBang by running: + +```bash +$ camel transform message --body=file:input/account.xml --component=xslt --template=file:stylesheet.xsl --pretty --watch ``` You can then edit the `stylesheet.xsl` file, and save the file, and watch the terminal for updated result. -## Run directly from GitHub +### Run directly from GitHub The example can also be run directly by referring to the GitHub URL as shown: ```sh -camel run https://github.com/apache/camel-jbang-examples/tree/main/xslt +$ camel run https://github.com/apache/camel-jbang-examples/tree/main/xslt ``` + +### Help and contributions + +If you hit any problem using Camel or have some feedback, then please +[let us know](https://camel.apache.org/community/support/). + +We also love contributors, so +[get involved](https://camel.apache.org/community/contributing/) :-) + +The Camel riders! diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/consumer.camel.yaml b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/consumer.camel.yaml index 18c6663e29aa..9e2e1ca556e6 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/consumer.camel.yaml +++ b/dsl/camel-jbang/camel-jbang-core/src/main/resources/examples/xslt/consumer.camel.yaml @@ -17,8 +17,9 @@ - route: from: - uri: file://input + uri: file parameters: + directoryName: input fileName: account.xml noop: true steps: @@ -27,4 +28,5 @@ parameters: resourceUri: stylesheet.xsl - log: - message: Transformed data:\n ${prettyBody} + message: "Transformed data:\\n ${prettyBody}" + diff --git a/pom.xml b/pom.xml index 3ee598aa57de..16fdc581bae4 100644 --- a/pom.xml +++ b/pom.xml @@ -390,6 +390,7 @@ <exclude>**/javax.annotations.processing.Processor</exclude> <exclude>**/helm/etc/**</exclude> <exclude>**/examples/*</exclude> + <exclude>**/examples/**/*</exclude> <exclude>**/*.wav</exclude> <exclude>**/*.cast</exclude> </excludes> @@ -588,6 +589,7 @@ <exclude>**/.camel-jbang/**/*</exclude> <exclude>**/commands/edit/edit-help.txt</exclude> <exclude>**/examples/*</exclude> + <exclude>**/examples/**/*</exclude> <exclude>**/src/main/resources/testdata/**/*</exclude> <!-- Claude Code / OMC worktrees --> <exclude>.claude/**/*</exclude>
