Este contenido no está disponible en el idioma seleccionado.
Chapter 83. YAML DSL
A YAML stack for parsing YAML route definitions
83.1. What’s inside Copiar enlaceEnlace copiado en el portapapeles!
Please refer to the above link for usage and configuration details.
83.2. Maven coordinates Copiar enlaceEnlace copiado en el portapapeles!
Create a new project with this extension on code.quarkus.redhat.com
Or add the coordinates to your existing project:
<dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-yaml-dsl</artifactId> </dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-yaml-dsl</artifactId>
</dependency>
83.3. Usage Copiar enlaceEnlace copiado en el portapapeles!
83.3.1. Native mode Copiar enlaceEnlace copiado en el portapapeles!
The following constructs when defined within Camel YAML DSL markup, require you to register classes for reflection. Refer to the Native mode guide for details.
83.3.1.1. Bean definitions Copiar enlaceEnlace copiado en el portapapeles!
The YAML DSL provides the capability to define beans as follows.
In this example, the GreetingBean
class needs to be registered for reflection. This applies to any types that you refer to under the beans
key in your YAML routes.
@RegisterForReflection public class GreetingBean { }
@RegisterForReflection
public class GreetingBean {
}
83.3.1.2. Exception handling Copiar enlaceEnlace copiado en el portapapeles!
Camel provides various methods of handling exceptions. Some of these require that any exception classes referenced in their DSL definitions are registered for reflection.
on-exception
@RegisterForReflection public class MyHandledException { }
@RegisterForReflection
public class MyHandledException {
}
throw-exception
@RegisterForReflection public class ForcedException { }
@RegisterForReflection
public class ForcedException {
}
do-catch
@RegisterForReflection(targets = FileNotFoundException.class) public class MyClass { }
@RegisterForReflection(targets = FileNotFoundException.class)
public class MyClass {
}