blob: 1389acda1a5d4dff6b6f04f5dd0ed11ec601cf9f [file] [log] [blame]
// Do not edit directly!
// This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
= JSON Schema Validator
:page-aliases: extensions/json-validator.adoc
:cq-artifact-id: camel-quarkus-json-validator
:cq-native-supported: true
:cq-status: Stable
:cq-description: Validate JSON payloads using NetworkNT JSON Schema.
:cq-deprecated: false
:cq-jvm-since: 1.0.0
:cq-native-since: 1.0.0
[.badges]
[.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0##
Validate JSON payloads using NetworkNT JSON Schema.
== What's inside
* https://camel.apache.org/components/latest/json-validator-component.html[JSON Schema Validator component], URI syntax: `json-validator:resourceUri`
Please refer to the above link for usage and configuration details.
== Maven coordinates
[source,xml]
----
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-json-validator</artifactId>
</dependency>
----
Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.
== allowContextMapAll option in native mode
The `allowContextMapAll` option is not supported in native mode as it requires reflective access to security sensitive camel core classes such as
`CamelContext` & `Exchange`. This is considered a security risk and thus access to the feature is not provided by default.
== Additional Camel Quarkus configuration
Beyond standard usages described above, a trick is needed when using json-validator templates from classpath resources in native mode. In such a situation, one needs to explicitly embed the resources in the native executable by specifying the `include-patterns` option.
For instance, the route below would load the json-validator template from a classpath resource named _schema.json_:
[source,java]
----
from("direct:start").to("json-validator:schema.json");
----
In order to work in native mode the `include-patterns` configuration should be set. For instance, in the `application.properties` file as below :
[source,properties]
----
quarkus.camel.native.resources.include-patterns = schema.json
----
More information about selecting resources for inclusion in the native executable could be found at xref:user-guide/native-mode.adoc#embedding-resource-in-native-executable[Embedding resource in native executable].