无法将 net.sf.saxon.jaxp.TemplatesImpl 转换为可序列化

Unable to cast the net.sf.saxon.jaxp.TemplatesImpl to serializable

我有一个问题: 我们可以序列化 net.sf.saxon.jaxp.TemplatesImpl 对象吗? 我的问题: 我无法序列化我的 net.sf.saxon.jaxp.TemplatesImpl 实例, 任何人都可以帮助如何序列化我的对象。 我得到如下异常:

java.lang.ClassCastException: net.sf.saxon.jaxp.TemplatesImpl 无法转换为 java.io.Serializable

我正在使用以下依赖项:

<!-- https://mvnrepository.com/artifact/net.sf.saxon/Saxon-HE -->
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
<version>9.8.0-4</version>
</dependency>

和 javax.xml api 我正在使用转换

我们曾经尝试过允许您使用 Java 序列化来制作已编译样式表的永久副本。它根本没有用。有很多问题。例如。已编译的样式表引用了某些不可序列化的 Java 类(如 RuleBasedCollat​​or)。此外,序列化表单的大小如此之大,以至于从源 XSLT 重新编译通常比反序列化已编译的表单更快。导入的模式也是一个问题。我现在忘记了所有的问题,但我们最终决定废弃这个设施。

取而代之的是,Saxon-EE 现在可以将已编译的样式表导出到 Saxon 定义的 XML 表示(样式表导出文件或 SEF),可以在相同或不同的机器。这也是 Saxon-JS 的基础,它允许导出的样式表在浏览器中执行。