DenisIstomin commented on issue #3503:
URL: https://github.com/apache/camel-quarkus/issues/3503#issuecomment-1027376184


   Hi @ppalaga, to be able to use extension functions in JVM mode (as well as 
in Native mode), these configuration steps have to be done:
   **1.** Set `FEATURE_SECURE_PROCESSING` to `false`
   **2.** Specify extension function classes, so they will be registered for 
reflection to run in Native mode
   
   **Step 1**. can be achieved in different ways:
   - add new setting `quarkus.camel.xslt.secureProcessing` with values 
`true/false`
   - add new setting `quarkus.camel.xslt.features` with comma separated 
features, that should be enabled by default. For example,  
`quarkus.camel.xslt.features=http://javax.xml.XMLConstants/feature/secure-processing,http://xml.apache.org/xalan/features/optimize,...`
   - add new setting `quarkus.camel.xslt.transformerFactory` to specify custom 
class, where developer can override features that are enabled by default. For 
example `quarkus.camel.xslt.transformerFactory=my.namespace.MyTrasformerFactory`
   
   **Step 2**. can be achieved by specifying classNames, so xslt component will 
register them automatically for reflection using `new 
ReflectiveClassBuildItem(...)`.
   Example: 
`quarkus.camel.xslt.extensionFunctions=my.extensionfunctions.Functions1,my.extensionfunctions.Functions2,...`
   
   **To summarize:**
   Taking into the account existing Camel setting 
[transformerFactoryClass](https://camel.apache.org/components/3.14.x/xslt-component.html#_component_option_transformerFactoryClass)
 I think that it would be reasonable to have these 2 settings:
   - `quarkus.camel.xslt.transformerFactory=my.namespace.MyTrasformerFactory`
   Also it would be usefult to be able to override 
`transformerFactoryConfigurationStrategy`
   - 
`quarkus.camel.xslt.extensionFunctions=my.extensionfunctions.Functions1,my.extensionfunctions.Functions2,...`
   
   But maybe I'm missing something and it could be implemented in simpler way.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to