Saxon配置允许调用setAllowExternalFunctions()
来启用或禁用从样式表调用外部函数。
有没有办法对此进行更细粒度的控制?我的具体需求是希望列出一些功能,同时阻止所有其他功能。
目前有什么办法吗?
答案 0 :(得分:0)
假设我们正在讨论反身扩展函数,您可以调用
((ProfessionalConfiguration) config).setExtensionBinder("java", javaLib);
其中javaLib是一个扩展com.saxonica.config.JavaExtensionLibrary
并覆盖bind()
和getFunctionItem()
等方法的类来检查函数名称是否正常,然后调用super()
if如此。
或者,阻止所有对自反功能的调用,并提供集成的扩展功能来实现白名单中的内容。