es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Validador de esquema json de Camel con borrador json 07.

Quiero usar el validador de esquemas JSON de Camel para validar un archivo JSON con un esquema JSON utilizando el borrador 07.

Apache Camel utiliza el borrador 04 por defecto y para cambiarlo al borrador 07 debo usar un cargador de esquemas de tipo JsonSchemaLoader según su documentación.

¿Cómo usar correctamente el cargador de esquemas? Seguí esta solución y los registros de Apache Camel muestran: ‘JsonSchemaException: Validation: null is an invalid segment for URI’.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para usar el schemaLoader del tipo JsonSchemaLoader para validar un archivo JSON con un esquema JSON utilizando el draft 07 en Apache Camel, siga estos pasos:

    1. Agregue la dependencia camel-json-validator a su proyecto. Puede hacerlo agregando la siguiente línea a su archivo pom.xml:
    <dependency>
        <groupid>org.apache.camel</groupid>
        <artifactid>camel-json-validator</artifactid>
        <version>x.x.x</version>
    </dependency>
    
    1. Cree el bean JsonSchemaLoader en su archivo Camel Context XML. Asegúrese de establecer la opción de draft en “draft07”, así:
    <bean id="jsonSchemaLoader" class="org.apache.camel.component.jsonvalidator.JsonSchemaLoader">
        <property name="draft">
            <constant>draft07</constant>
        </property>
    </bean>
    
    1. Utilice el bean JsonSchemaLoader en su punto final de validador JSON. Aquí hay un ejemplo de ruta que utiliza el JsonSchemaLoader para validar un archivo JSON:
    from("file:/path/to/json/files?noop=true")
        .to("json-validator:mySchema.json?schemaLoader=#jsonSchemaLoader")
    

    En este ejemplo, los archivos JSON en /path/to/json/files se validan contra el esquema mySchema.json utilizando el JsonSchemaLoader.

    Si sigue estos pasos y aún obtiene el error “JsonSchemaException: Validation: null is an invalid segment for URI”, asegúrese de que su archivo de esquema esté en la ubicación correcta y que sea válido. Puede validar su archivo de esquema utilizando un validador de esquema JSON en línea, como https://www.jsonschemavalidator.net/. Además, asegúrese de que el bean schemaLoader esté configurado y referenciado correctamente en su ruta.

Comments are closed.