Resolve Schema Action
Provided by: "Apache Software Foundation"
Support Level for this Kamelet is: "Stable"
Resolves schema from given mime type and payload. Sets the resolved schema, the schema type and its content class as properties for later reference.
Configuration Options
The following table summarizes the configuration options available for the resolve-pojo-schema-action
Kamelet:
Property | Name | Description | Type | Default | Example |
---|---|---|---|---|---|
Content Class | Type information of the content object. Fully qualified class name. | string | org.apache.camel.content.Foo | ||
Mime Type | The mime type to determine the schema resolver implementation that should perform the operation. | string | application/json | application/json | |
Schema | Optional schema content (as single-line, using JSON format). | string | |||
Target Mime Type | Additional mime type information used to determine the schema resolver. Usually only used in combination with mime type "application/x-java-object". | string | application/json |
Dependencies
At runtime, the resolve-pojo-schema-action
Kamelet relies upon the presence of the following dependencies:
-
mvn:org.apache.camel.kamelets:camel-kamelets-utils:4.0.4-SNAPSHOT
-
camel:kamelet
-
camel:core
-
camel:jackson-avro
-
camel:jackson-protobuf
Camel JBang usage
Prerequisites
-
You’ve installed JBang.
-
You have executed the following command:
jbang app install camel@apache/camel
Supposing you have a file named route.yaml with this content:
- route:
from:
uri: "kamelet:timer-source"
parameters:
period: 10000
message: 'test'
steps:
- to:
uri: "kamelet:log-sink"
You can now run it directly through the following command
camel run route.yaml
Camel K Environment Usage
This section describes how you can use the resolve-pojo-schema-action
.
Knative action
You can use the resolve-pojo-schema-action
Kamelet as an intermediate step in a Knative binding.
apiVersion: camel.apache.org/v1
kind: KameletBinding
metadata:
name: resolve-pojo-schema-action-binding
spec:
source:
ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: kafka-source
properties:
bootstrapServers: localhost:9092
topic: mytopic
user: kafka
password: kafka123!
steps:
- ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: resolve-pojo-schema-action
sink:
ref:
kind: Channel
apiVersion: messaging.knative.dev/v1
name: mychannel
Prerequisite
You have Camel K installed on the cluster.
Kafka action
You can use the resolve-pojo-schema-action
Kamelet as an intermediate step in a Kafka binding.
apiVersion: camel.apache.org/v1
kind: KameletBinding
metadata:
name: resolve-pojo-schema-action-binding
spec:
source:
ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: kafka-source
properties:
bootstrapServers: localhost:9092
topic: mytopic
user: kafka
password: kafka123!
steps:
- ref:
kind: Kamelet
apiVersion: camel.apache.org/v1
name: resolve-pojo-schema-action
sink:
ref:
kind: KafkaTopic
apiVersion: kafka.strimzi.io/v1beta1
name: my-topic
Prerequisites
-
You’ve installed Strimzi.
-
You’ve created a topic named
my-topic
in the current namespace. -
You have Camel K installed on the cluster.