我想知道是否有办法强制 JAXB 创建与 XSD 模式相同的名称空间前缀。即,即使我从其中包含 xmlns:cts="http://cts.com" 的模式创建 JAXB 类,在编组类之后,我得到一个带有 xmlns:ns1 前缀的 XML。我知道我可以通过使用 NamespacePrefixMapper 类来覆盖这些,但是当我的 XSD 清楚地定义了默认前缀时,为什么我需要手动执行此操作?我当前的 XML 中有大量前缀,因此在初始 xjc 生成之后手动更改包级声明或类注释也是一个巨大的返工。我正在处理一个带有 10+ XSD 导入和 5000+ 元素以及数十个根元素的基本 XSD。
端点系统超出了我们的控制范围,因此我必须关心在 XML 中使用了哪些前缀,因为它们没有适当的 XML 处理实现。
这有什么捷径吗?感谢所有的投入。
问候, Gökhan