我当前的实现使用 JSP 生成 XML,但是我使用的不同记录类型的数量已经增加,而且 JSP 模板的数量也变得难以维护。
所以我使用 javax.xml.bind 编写了一个解决方案,但很快发现该代码可以编译但不能在 OSGi 中运行。长话短说,有一个本地编译的依赖项——com.sun.*——默认情况下不包含在 Felix 引导类路径中。包含此依赖关系是修改 sling.properties 以在 org.osgi.framework.bootdelegation 配置行中包含 com.sun.* 的问题。但是,我在大型企业生产环境中工作,因此管理额外配置块的想法并不理想。
所以,我的问题是:有没有更好的方法在 Adobe CQ 中以编程方式生成自定义 XML?我应该使用的堆栈中是否有不同的 JAXB impl,而不是 javax.xml.bind?是否有另一个对 CQ/Felix 更友好的 XML 编组 API?