gpt4 book ai didi

namespaces - java 6 中的 JAXB 未在编码的 XML 文件中添加正确的命名空间前缀

转载 作者:行者123 更新时间:2023-12-04 16:52:49 24 4
gpt4 key购买 nike

我在架构元素中有一个具有以下属性的架构:

<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:abc="http://abc.example.com" targetNamespace="http://abc.example.com" elementFormDefault="qualified" attributeFormDefault="unqualified">

我可以编译它并获得 java 类。使用这些类,我在一个对象中填充数据并将其编码以获取 XML 文件。

但是这个编码文件中的 XML 元素没有前缀“abc”。

我在编码时使用 XMLStreamWriter.setPrefix 进行了一些调整,我可以获得所有元素都以“abc”为前缀的 XML 文件。

现在,当我尝试解码相同的 XML 文件时,它会抛出错误说:

[org.xml.sax.SAXParseException:未绑定(bind)元素“abc:Name”的前缀“abc”。]

请帮助我如何让 JAXB 知道 abc 是正确的前缀。

谢谢
普拉迪普

最佳答案

前缀的名称没有意义。它所做的只是在命名空间和属于该命名空间的标签之间建立连接。前缀是 abc 还是 namespace01 或者没有前缀,因为使用了默认命名空间并不重要。据我所知,您不能在 JAXB 中强制使用前缀或前缀的特定名称。

关于namespaces - java 6 中的 JAXB 未在编码的 XML 文件中添加正确的命名空间前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4040682/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com