This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git


The following commit(s) were added to refs/heads/main by this push:
     new 5be1ddf6b4a Regen
5be1ddf6b4a is described below

commit 5be1ddf6b4a53c08d4bf1fe5ad65299b1936e3bd
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Wed Sep 20 19:59:55 2023 +0200

    Regen
---
 .../camel/springboot/catalog/components/xj.json    | 63 +++++++++++-----------
 .../springboot/catalog/components/xslt-saxon.json  | 61 +++++++++++----------
 .../camel/springboot/catalog/components/xslt.json  | 47 ++++++++--------
 .../camel-xj-starter/src/main/docs/xj.json         |  7 +++
 .../xj/springboot/XJComponentConfiguration.java    | 15 ++++++
 .../src/main/docs/xslt-saxon.json                  |  7 +++
 .../XsltSaxonComponentConfiguration.java           | 15 ++++++
 .../camel-xslt-starter/src/main/docs/xslt.json     |  7 +++
 .../springboot/XsltComponentConfiguration.java     | 15 ++++++
 9 files changed, 156 insertions(+), 81 deletions(-)

diff --git 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xj.json
 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xj.json
index 6b08a1b10b8..672e787578d 100644
--- 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xj.json
+++ 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xj.json
@@ -22,41 +22,44 @@
     "lenientProperties": false
   },
   "componentProperties": {
-    "contentCache": { "index": 0, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
-    "lazyStartProducer": { "index": 1, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
-    "autowiredEnabled": { "index": 2, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
-    "saxonConfiguration": { "index": 3, "kind": "property", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
-    "saxonConfigurationProperties": { "index": 4, "kind": "property", 
"displayName": "Saxon Configuration Properties", "group": "advanced", "label": 
"advanced", "required": false, "type": "object", "javaType": 
"java.util.Map<java.lang.String, java.lang.Object>", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set custom Saxon 
configuration properties" },
-    "saxonExtensionFunctions": { "index": 5, "kind": "property", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can use 
commas to se [...]
-    "secureProcessing": { "index": 6, "kind": "property", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Java  [...]
-    "transformerFactoryClass": { "index": 7, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 8, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 9, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
-    "uriResolverFactory": { "index": 10, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
+    "allowTemplateFromHeader": { "index": 0, "kind": "property", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential se [...]
+    "contentCache": { "index": 1, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
+    "lazyStartProducer": { "index": 2, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
+    "autowiredEnabled": { "index": 3, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
+    "saxonConfiguration": { "index": 4, "kind": "property", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
+    "saxonConfigurationProperties": { "index": 5, "kind": "property", 
"displayName": "Saxon Configuration Properties", "group": "advanced", "label": 
"advanced", "required": false, "type": "object", "javaType": 
"java.util.Map<java.lang.String, java.lang.Object>", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set custom Saxon 
configuration properties" },
+    "saxonExtensionFunctions": { "index": 6, "kind": "property", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can use 
commas to se [...]
+    "secureProcessing": { "index": 7, "kind": "property", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Java  [...]
+    "transformerFactoryClass": { "index": 8, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 9, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 10, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
+    "uriResolverFactory": { "index": 11, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
   },
   "headers": {
-    "CamelXsltFileName": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xj.XJConstants#XSLT_FILE_NAME" }
+    "CamelXsltFileName": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xj.XJConstants#XSLT_FILE_NAME" },
+    "CamelXsltResourceUri": { "index": 1, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "A URI for the template resource to use instead of the 
endpoint configured.", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_RESOURCE_URI" }
   },
   "properties": {
     "resourceUri": { "index": 0, "kind": "path", "displayName": "Resource 
Uri", "group": "producer", "label": "", "required": true, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "description": "Path to the template. The 
following is supported by the default URIResolver. You can prefix with: 
classpath, file, http, ref, or bean. classpath, file and http loads the 
resource using these protocols (classpath i [...]
     "allowStAX": { "index": 1, "kind": "parameter", "displayName": "Allow 
StAX", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Whether to allow using StAX as the 
javax.xml.transform.Source. You can enable this if the XSLT library supports 
StAX such as the Saxon library (camel-saxon). The Xalan library (default in 
JVM) does not support StAXSource." },
-    "contentCache": { "index": 2, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
-    "deleteOutputFile": { "index": 3, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
-    "failOnNullBody": { "index": 4, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
-    "output": { "index": 5, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
-    "transformDirection": { "index": 6, "kind": "parameter", "displayName": 
"Transform Direction", "group": "producer", "label": "", "required": true, 
"type": "object", "javaType": 
"org.apache.camel.component.xj.TransformDirection", "enum": [ "XML2JSON", 
"JSON2XML" ], "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "Transform direction. Either XML2JSON or 
JSON2XML" },
-    "transformerCacheSize": { "index": 7, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
-    "lazyStartProducer": { "index": 8, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
-    "entityResolver": { "index": 9, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
-    "errorListener": { "index": 10, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exc [...]
-    "resultHandlerFactory": { "index": 11, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
-    "saxonConfiguration": { "index": 12, "kind": "parameter", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
-    "saxonExtensionFunctions": { "index": 13, "kind": "parameter", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can 
comma to separ [...]
-    "secureProcessing": { "index": 14, "kind": "parameter", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Jav [...]
-    "transformerFactory": { "index": 15, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
-    "transformerFactoryClass": { "index": 16, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 17, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 18, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
-    "xsltMessageLogger": { "index": 19, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
+    "allowTemplateFromHeader": { "index": 2, "kind": "parameter", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential s [...]
+    "contentCache": { "index": 3, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
+    "deleteOutputFile": { "index": 4, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
+    "failOnNullBody": { "index": 5, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
+    "output": { "index": 6, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
+    "transformDirection": { "index": 7, "kind": "parameter", "displayName": 
"Transform Direction", "group": "producer", "label": "", "required": true, 
"type": "object", "javaType": 
"org.apache.camel.component.xj.TransformDirection", "enum": [ "XML2JSON", 
"JSON2XML" ], "deprecated": false, "deprecationNote": "", "autowired": false, 
"secret": false, "description": "Transform direction. Either XML2JSON or 
JSON2XML" },
+    "transformerCacheSize": { "index": 8, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
+    "lazyStartProducer": { "index": 9, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
+    "entityResolver": { "index": 10, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
+    "errorListener": { "index": 11, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exc [...]
+    "resultHandlerFactory": { "index": 12, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
+    "saxonConfiguration": { "index": 13, "kind": "parameter", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
+    "saxonExtensionFunctions": { "index": 14, "kind": "parameter", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can 
comma to separ [...]
+    "secureProcessing": { "index": 15, "kind": "parameter", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Jav [...]
+    "transformerFactory": { "index": 16, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
+    "transformerFactoryClass": { "index": 17, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 18, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 19, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
+    "xsltMessageLogger": { "index": 20, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
   }
 }
diff --git 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt-saxon.json
 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt-saxon.json
index dc7cc82fec9..4bff543b6f7 100644
--- 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt-saxon.json
+++ 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt-saxon.json
@@ -22,40 +22,43 @@
     "lenientProperties": false
   },
   "componentProperties": {
-    "contentCache": { "index": 0, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
-    "lazyStartProducer": { "index": 1, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
-    "autowiredEnabled": { "index": 2, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
-    "saxonConfiguration": { "index": 3, "kind": "property", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
-    "saxonConfigurationProperties": { "index": 4, "kind": "property", 
"displayName": "Saxon Configuration Properties", "group": "advanced", "label": 
"advanced", "required": false, "type": "object", "javaType": 
"java.util.Map<java.lang.String, java.lang.Object>", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set custom Saxon 
configuration properties" },
-    "saxonExtensionFunctions": { "index": 5, "kind": "property", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can use 
commas to se [...]
-    "secureProcessing": { "index": 6, "kind": "property", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Java  [...]
-    "transformerFactoryClass": { "index": 7, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 8, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 9, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
-    "uriResolverFactory": { "index": 10, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
+    "allowTemplateFromHeader": { "index": 0, "kind": "property", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential se [...]
+    "contentCache": { "index": 1, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
+    "lazyStartProducer": { "index": 2, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
+    "autowiredEnabled": { "index": 3, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
+    "saxonConfiguration": { "index": 4, "kind": "property", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
+    "saxonConfigurationProperties": { "index": 5, "kind": "property", 
"displayName": "Saxon Configuration Properties", "group": "advanced", "label": 
"advanced", "required": false, "type": "object", "javaType": 
"java.util.Map<java.lang.String, java.lang.Object>", "deprecated": false, 
"autowired": false, "secret": false, "description": "To set custom Saxon 
configuration properties" },
+    "saxonExtensionFunctions": { "index": 6, "kind": "property", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can use 
commas to se [...]
+    "secureProcessing": { "index": 7, "kind": "property", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Java  [...]
+    "transformerFactoryClass": { "index": 8, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 9, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 10, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
+    "uriResolverFactory": { "index": 11, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
   },
   "headers": {
-    "CamelXsltFileName": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_FILE_NAME" }
+    "CamelXsltResourceUri": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "A URI for the template resource to use instead of the 
endpoint configured.", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_RESOURCE_URI" },
+    "CamelXsltFileName": { "index": 1, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_FILE_NAME" }
   },
   "properties": {
     "resourceUri": { "index": 0, "kind": "path", "displayName": "Resource 
Uri", "group": "producer", "label": "", "required": true, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "description": "Path to the template. The 
following is supported by the default URIResolver. You can prefix with: 
classpath, file, http, ref, or bean. classpath, file and http loads the 
resource using these protocols (classpath i [...]
     "allowStAX": { "index": 1, "kind": "parameter", "displayName": "Allow 
StAX", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Whether to allow using StAX as the 
javax.xml.transform.Source. You can enable this if the XSLT library supports 
StAX such as the Saxon library (camel-saxon). The Xalan library (default in 
JVM) does not support StAXSource." },
-    "contentCache": { "index": 2, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
-    "deleteOutputFile": { "index": 3, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
-    "failOnNullBody": { "index": 4, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
-    "output": { "index": 5, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
-    "transformerCacheSize": { "index": 6, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
-    "lazyStartProducer": { "index": 7, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
-    "entityResolver": { "index": 8, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
-    "errorListener": { "index": 9, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exch [...]
-    "resultHandlerFactory": { "index": 10, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
-    "saxonConfiguration": { "index": 11, "kind": "parameter", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
-    "saxonExtensionFunctions": { "index": 12, "kind": "parameter", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can 
comma to separ [...]
-    "secureProcessing": { "index": 13, "kind": "parameter", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Jav [...]
-    "transformerFactory": { "index": 14, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
-    "transformerFactoryClass": { "index": 15, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 16, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 17, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
-    "xsltMessageLogger": { "index": 18, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
+    "allowTemplateFromHeader": { "index": 2, "kind": "parameter", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential s [...]
+    "contentCache": { "index": 3, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
+    "deleteOutputFile": { "index": 4, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
+    "failOnNullBody": { "index": 5, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
+    "output": { "index": 6, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
+    "transformerCacheSize": { "index": 7, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
+    "lazyStartProducer": { "index": 8, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
+    "entityResolver": { "index": 9, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
+    "errorListener": { "index": 10, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exc [...]
+    "resultHandlerFactory": { "index": 11, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
+    "saxonConfiguration": { "index": 12, "kind": "parameter", "displayName": 
"Saxon Configuration", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "net.sf.saxon.Configuration", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom Saxon configuration" },
+    "saxonExtensionFunctions": { "index": 13, "kind": "parameter", 
"displayName": "Saxon Extension Functions", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "Allows you to use a custom 
net.sf.saxon.lib.ExtensionFunctionDefinition. You would need to add camel-saxon 
to the classpath. The function is looked up in the registry, where you can 
comma to separ [...]
+    "secureProcessing": { "index": 14, "kind": "parameter", "displayName": 
"Secure Processing", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Feature for XML secure processing (see javax.xml.XMLConstants). This is 
enabled by default. However, when using Saxon Professional you may need to turn 
this off to allow Saxon to be able to use Jav [...]
+    "transformerFactory": { "index": 15, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
+    "transformerFactoryClass": { "index": 16, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 17, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 18, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
+    "xsltMessageLogger": { "index": 19, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
   }
 }
diff --git 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt.json
 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt.json
index c239bcc29c1..3b058fb8d00 100644
--- 
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt.json
+++ 
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/xslt.json
@@ -22,32 +22,35 @@
     "lenientProperties": false
   },
   "componentProperties": {
-    "contentCache": { "index": 0, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
-    "lazyStartProducer": { "index": 1, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
-    "autowiredEnabled": { "index": 2, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
-    "transformerFactoryClass": { "index": 3, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 4, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 5, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
-    "uriResolverFactory": { "index": 6, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
+    "allowTemplateFromHeader": { "index": 0, "kind": "property", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential se [...]
+    "contentCache": { "index": 1, "kind": "property", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be forc [...]
+    "lazyStartProducer": { "index": 2, "kind": "property", "displayName": 
"Lazy Start Producer", "group": "producer", "label": "producer", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Whether the producer should be started lazy (on the first message). By 
starting lazy you can use this to allow CamelContext and routes to startup in 
situations where a producer may otherwise fail [...]
+    "autowiredEnabled": { "index": 3, "kind": "property", "displayName": 
"Autowired Enabled", "group": "advanced", "label": "advanced", "required": 
false, "type": "boolean", "javaType": "boolean", "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Whether autowiring is enabled. This is used for automatic autowiring options 
(the option must be marked as autowired) by looking up in the registry to find 
if there is a single instance of matching t [...]
+    "transformerFactoryClass": { "index": 4, "kind": "property", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 5, "kind": 
"property", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 6, "kind": "property", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver. Should not be used together with the option 'uriResolverFactory'." 
},
+    "uriResolverFactory": { "index": 7, "kind": "property", "displayName": 
"Uri Resolver Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltUriResolverFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
UriResolver which depends on a dynamic endpoint resource URI. Should not be 
used together with the option 'uriResolver'." }
   },
   "headers": {
-    "CamelXsltFileName": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_FILE_NAME" }
+    "CamelXsltResourceUri": { "index": 0, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "A URI for the template resource to use instead of the 
endpoint configured.", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_RESOURCE_URI" },
+    "CamelXsltFileName": { "index": 1, "kind": "header", "displayName": "", 
"group": "producer", "label": "", "required": false, "javaType": "String", 
"deprecated": false, "deprecationNote": "", "autowired": false, "secret": 
false, "description": "The XSLT file name", "constantName": 
"org.apache.camel.component.xslt.XsltConstants#XSLT_FILE_NAME" }
   },
   "properties": {
     "resourceUri": { "index": 0, "kind": "path", "displayName": "Resource 
Uri", "group": "producer", "label": "", "required": true, "type": "string", 
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "description": "Path to the template. The 
following is supported by the default URIResolver. You can prefix with: 
classpath, file, http, ref, or bean. classpath, file and http loads the 
resource using these protocols (classpath i [...]
-    "contentCache": { "index": 1, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
-    "deleteOutputFile": { "index": 2, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
-    "failOnNullBody": { "index": 3, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
-    "output": { "index": 4, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
-    "transformerCacheSize": { "index": 5, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
-    "lazyStartProducer": { "index": 6, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
-    "entityResolver": { "index": 7, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
-    "errorListener": { "index": 8, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exch [...]
-    "resultHandlerFactory": { "index": 9, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
-    "transformerFactory": { "index": 10, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
-    "transformerFactoryClass": { "index": 11, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
-    "transformerFactoryConfigurationStrategy": { "index": 12, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
-    "uriResolver": { "index": 13, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
-    "xsltMessageLogger": { "index": 14, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
+    "allowTemplateFromHeader": { "index": 1, "kind": "parameter", 
"displayName": "Allow Template From Header", "group": "producer", "label": "", 
"required": false, "type": "boolean", "javaType": "boolean", "deprecated": 
false, "autowired": false, "secret": false, "defaultValue": false, 
"description": "Whether to allow to use resource template from header or not 
(default false). Enabling this allows to specify dynamic templates via message 
header. However this can be seen as a potential s [...]
+    "contentCache": { "index": 2, "kind": "parameter", "displayName": "Content 
Cache", "group": "producer", "label": "", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "description": "Cache for the resource content 
(the stylesheet file) when it is loaded. If set to false Camel will reload the 
stylesheet file on each message processing. This is good for development. A 
cached stylesheet can be for [...]
+    "deleteOutputFile": { "index": 3, "kind": "parameter", "displayName": 
"Delete Output File", "group": "producer", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "description": "If you have 
output=file then this option dictates whether or not the output file should be 
deleted when the Exchange is done processing. For example suppose the output 
file is a temporary file, then it ca [...]
+    "failOnNullBody": { "index": 4, "kind": "parameter", "displayName": "Fail 
On Null Body", "group": "producer", "label": "", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": true, "description": "Whether or not to throw 
an exception if the input body is null." },
+    "output": { "index": 5, "kind": "parameter", "displayName": "Output", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "org.apache.camel.component.xslt.XsltOutput", "enum": [ "string", 
"bytes", "DOM", "file" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "string", "description": "Option to specify which output 
type to use. Possible values are: string, bytes, DOM, file. The first three 
options are all in memory based, whe [...]
+    "transformerCacheSize": { "index": 6, "kind": "parameter", "displayName": 
"Transformer Cache Size", "group": "producer", "label": "", "required": false, 
"type": "integer", "javaType": "int", "deprecated": false, "autowired": false, 
"secret": false, "defaultValue": 0, "description": "The number of 
javax.xml.transform.Transformer object that are cached for reuse to avoid calls 
to Template.newTransformer()." },
+    "lazyStartProducer": { "index": 7, "kind": "parameter", "displayName": 
"Lazy Start Producer", "group": "producer (advanced)", "label": 
"producer,advanced", "required": false, "type": "boolean", "javaType": 
"boolean", "deprecated": false, "autowired": false, "secret": false, 
"defaultValue": false, "description": "Whether the producer should be started 
lazy (on the first message). By starting lazy you can use this to allow 
CamelContext and routes to startup in situations where a produc [...]
+    "entityResolver": { "index": 8, "kind": "parameter", "displayName": 
"Entity Resolver", "group": "advanced", "label": "advanced", "required": false, 
"type": "object", "javaType": "org.xml.sax.EntityResolver", "deprecated": 
false, "autowired": false, "secret": false, "description": "To use a custom 
org.xml.sax.EntityResolver with javax.xml.transform.sax.SAXSource." },
+    "errorListener": { "index": 9, "kind": "parameter", "displayName": "Error 
Listener", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.ErrorListener", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows to configure to use 
a custom javax.xml.transform.ErrorListener. Beware when doing this then the 
default error listener which captures any errors or fatal errors and store 
information on the Exch [...]
+    "resultHandlerFactory": { "index": 10, "kind": "parameter", "displayName": 
"Result Handler Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.ResultHandlerFactory", "deprecated": false, 
"autowired": false, "secret": false, "description": "Allows you to use a custom 
org.apache.camel.builder.xml.ResultHandlerFactory which is capable of using 
custom org.apache.camel.builder.xml.ResultHandler types." },
+    "transformerFactory": { "index": 11, "kind": "parameter", "displayName": 
"Transformer Factory", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": "javax.xml.transform.TransformerFactory", 
"deprecated": false, "autowired": false, "secret": false, "description": "To 
use a custom XSLT transformer factory" },
+    "transformerFactoryClass": { "index": 12, "kind": "parameter", 
"displayName": "Transformer Factory Class", "group": "advanced", "label": 
"advanced", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"description": "To use a custom XSLT transformer factory, specified as a FQN 
class name" },
+    "transformerFactoryConfigurationStrategy": { "index": 13, "kind": 
"parameter", "displayName": "Transformer Factory Configuration Strategy", 
"group": "advanced", "label": "advanced", "required": false, "type": "object", 
"javaType": 
"org.apache.camel.component.xslt.TransformerFactoryConfigurationStrategy", 
"deprecated": false, "autowired": false, "secret": false, "description": "A 
configuration strategy to apply on freshly created instances of 
TransformerFactory." },
+    "uriResolver": { "index": 14, "kind": "parameter", "displayName": "Uri 
Resolver", "group": "advanced", "label": "advanced", "required": false, "type": 
"object", "javaType": "javax.xml.transform.URIResolver", "deprecated": false, 
"autowired": false, "secret": false, "description": "To use a custom 
javax.xml.transform.URIResolver" },
+    "xsltMessageLogger": { "index": 15, "kind": "parameter", "displayName": 
"Xslt Message Logger", "group": "advanced", "label": "advanced", "required": 
false, "type": "object", "javaType": 
"org.apache.camel.component.xslt.XsltMessageLogger", "deprecated": false, 
"autowired": false, "secret": false, "description": "A consumer to messages 
generated during XSLT transformations." }
   }
 }
diff --git a/components-starter/camel-xj-starter/src/main/docs/xj.json 
b/components-starter/camel-xj-starter/src/main/docs/xj.json
index 5d0008f1d4a..0f88c3d39b0 100644
--- a/components-starter/camel-xj-starter/src/main/docs/xj.json
+++ b/components-starter/camel-xj-starter/src/main/docs/xj.json
@@ -13,6 +13,13 @@
     }
   ],
   "properties": [
+    {
+      "name": "camel.component.xj.allow-template-from-header",
+      "type": "java.lang.Boolean",
+      "description": "Whether to allow to use resource template from header or 
not (default false). Enabling this allows to specify dynamic templates via 
message header. However this can be seen as a potential security vulnerability 
if the header is coming from a malicious user, so use this with care.",
+      "sourceType": 
"org.apache.camel.component.xj.springboot.XJComponentConfiguration",
+      "defaultValue": false
+    },
     {
       "name": "camel.component.xj.autowired-enabled",
       "type": "java.lang.Boolean",
diff --git 
a/components-starter/camel-xj-starter/src/main/java/org/apache/camel/component/xj/springboot/XJComponentConfiguration.java
 
b/components-starter/camel-xj-starter/src/main/java/org/apache/camel/component/xj/springboot/XJComponentConfiguration.java
index cd6733bda87..17bf0148a1a 100644
--- 
a/components-starter/camel-xj-starter/src/main/java/org/apache/camel/component/xj/springboot/XJComponentConfiguration.java
+++ 
b/components-starter/camel-xj-starter/src/main/java/org/apache/camel/component/xj/springboot/XJComponentConfiguration.java
@@ -39,6 +39,13 @@ public class XJComponentConfiguration
      * by default.
      */
     private Boolean enabled;
+    /**
+     * Whether to allow to use resource template from header or not (default
+     * false). Enabling this allows to specify dynamic templates via message
+     * header. However this can be seen as a potential security vulnerability 
if
+     * the header is coming from a malicious user, so use this with care.
+     */
+    private Boolean allowTemplateFromHeader = false;
     /**
      * Cache for the resource content (the stylesheet file) when it is loaded.
      * If set to false Camel will reload the stylesheet file on each message
@@ -114,6 +121,14 @@ public class XJComponentConfiguration
      */
     private XsltUriResolverFactory uriResolverFactory;
 
+    public Boolean getAllowTemplateFromHeader() {
+        return allowTemplateFromHeader;
+    }
+
+    public void setAllowTemplateFromHeader(Boolean allowTemplateFromHeader) {
+        this.allowTemplateFromHeader = allowTemplateFromHeader;
+    }
+
     public Boolean getContentCache() {
         return contentCache;
     }
diff --git 
a/components-starter/camel-xslt-saxon-starter/src/main/docs/xslt-saxon.json 
b/components-starter/camel-xslt-saxon-starter/src/main/docs/xslt-saxon.json
index 3a4d1d91289..f88ccc65d55 100644
--- a/components-starter/camel-xslt-saxon-starter/src/main/docs/xslt-saxon.json
+++ b/components-starter/camel-xslt-saxon-starter/src/main/docs/xslt-saxon.json
@@ -13,6 +13,13 @@
     }
   ],
   "properties": [
+    {
+      "name": "camel.component.xslt-saxon.allow-template-from-header",
+      "type": "java.lang.Boolean",
+      "description": "Whether to allow to use resource template from header or 
not (default false). Enabling this allows to specify dynamic templates via 
message header. However this can be seen as a potential security vulnerability 
if the header is coming from a malicious user, so use this with care.",
+      "sourceType": 
"org.apache.camel.component.xslt.saxon.springboot.XsltSaxonComponentConfiguration",
+      "defaultValue": false
+    },
     {
       "name": "camel.component.xslt-saxon.autowired-enabled",
       "type": "java.lang.Boolean",
diff --git 
a/components-starter/camel-xslt-saxon-starter/src/main/java/org/apache/camel/component/xslt/saxon/springboot/XsltSaxonComponentConfiguration.java
 
b/components-starter/camel-xslt-saxon-starter/src/main/java/org/apache/camel/component/xslt/saxon/springboot/XsltSaxonComponentConfiguration.java
index 1510b96b7d6..2fe02671450 100644
--- 
a/components-starter/camel-xslt-saxon-starter/src/main/java/org/apache/camel/component/xslt/saxon/springboot/XsltSaxonComponentConfiguration.java
+++ 
b/components-starter/camel-xslt-saxon-starter/src/main/java/org/apache/camel/component/xslt/saxon/springboot/XsltSaxonComponentConfiguration.java
@@ -39,6 +39,13 @@ public class XsltSaxonComponentConfiguration
      * enabled by default.
      */
     private Boolean enabled;
+    /**
+     * Whether to allow to use resource template from header or not (default
+     * false). Enabling this allows to specify dynamic templates via message
+     * header. However this can be seen as a potential security vulnerability 
if
+     * the header is coming from a malicious user, so use this with care.
+     */
+    private Boolean allowTemplateFromHeader = false;
     /**
      * Cache for the resource content (the stylesheet file) when it is loaded.
      * If set to false Camel will reload the stylesheet file on each message
@@ -114,6 +121,14 @@ public class XsltSaxonComponentConfiguration
      */
     private XsltUriResolverFactory uriResolverFactory;
 
+    public Boolean getAllowTemplateFromHeader() {
+        return allowTemplateFromHeader;
+    }
+
+    public void setAllowTemplateFromHeader(Boolean allowTemplateFromHeader) {
+        this.allowTemplateFromHeader = allowTemplateFromHeader;
+    }
+
     public Boolean getContentCache() {
         return contentCache;
     }
diff --git a/components-starter/camel-xslt-starter/src/main/docs/xslt.json 
b/components-starter/camel-xslt-starter/src/main/docs/xslt.json
index 1e29a418bf9..63ee8abf1dc 100644
--- a/components-starter/camel-xslt-starter/src/main/docs/xslt.json
+++ b/components-starter/camel-xslt-starter/src/main/docs/xslt.json
@@ -13,6 +13,13 @@
     }
   ],
   "properties": [
+    {
+      "name": "camel.component.xslt.allow-template-from-header",
+      "type": "java.lang.Boolean",
+      "description": "Whether to allow to use resource template from header or 
not (default false). Enabling this allows to specify dynamic templates via 
message header. However this can be seen as a potential security vulnerability 
if the header is coming from a malicious user, so use this with care.",
+      "sourceType": 
"org.apache.camel.component.xslt.springboot.XsltComponentConfiguration",
+      "defaultValue": false
+    },
     {
       "name": "camel.component.xslt.autowired-enabled",
       "type": "java.lang.Boolean",
diff --git 
a/components-starter/camel-xslt-starter/src/main/java/org/apache/camel/component/xslt/springboot/XsltComponentConfiguration.java
 
b/components-starter/camel-xslt-starter/src/main/java/org/apache/camel/component/xslt/springboot/XsltComponentConfiguration.java
index c8017a10de4..6eb682053d8 100644
--- 
a/components-starter/camel-xslt-starter/src/main/java/org/apache/camel/component/xslt/springboot/XsltComponentConfiguration.java
+++ 
b/components-starter/camel-xslt-starter/src/main/java/org/apache/camel/component/xslt/springboot/XsltComponentConfiguration.java
@@ -37,6 +37,13 @@ public class XsltComponentConfiguration
      * enabled by default.
      */
     private Boolean enabled;
+    /**
+     * Whether to allow to use resource template from header or not (default
+     * false). Enabling this allows to specify dynamic templates via message
+     * header. However this can be seen as a potential security vulnerability 
if
+     * the header is coming from a malicious user, so use this with care.
+     */
+    private Boolean allowTemplateFromHeader = false;
     /**
      * Cache for the resource content (the stylesheet file) when it is loaded.
      * If set to false Camel will reload the stylesheet file on each message
@@ -89,6 +96,14 @@ public class XsltComponentConfiguration
      */
     private XsltUriResolverFactory uriResolverFactory;
 
+    public Boolean getAllowTemplateFromHeader() {
+        return allowTemplateFromHeader;
+    }
+
+    public void setAllowTemplateFromHeader(Boolean allowTemplateFromHeader) {
+        this.allowTemplateFromHeader = allowTemplateFromHeader;
+    }
+
     public Boolean getContentCache() {
         return contentCache;
     }

Reply via email to