目前,我正在映射一个命名空间,通过创建一个包的package-info.java文件与以下注释。
@XmlSchema(elementFormDefault = XmlNsForm.QUALIFIED,
namespace = "http://example.com",
xmlns = {
@XmlNs(prefix = "i",
namespaceURI = "http://www.w3.org/2001/XMLSchema-instance")
})
正如您所看到的,我的一个命名空间没有前缀,而另一个命名空间有前缀,这目前是有效的,但我想要另一种映射命名空间的方式,而不必创建单独的文件,任何人都知道我如何将命名空间映射放在类中的注释旁边?
在我的XML中,名称空间声明位于根元素中,如下所示:
<RootElement xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://example.com">...
我的类声明和注释类似于根元素的下面。
@XmlRootElement(name="RootElement)
public static class RootElement{
........
}
谢谢
我希望以下帮助:
程序包信息
@XmlSchema(
elementFormDefault = XmlNsForm.QUALIFIED,
namespace = "http://example.com")
package forum20127191;
import javax.xml.bind.annotation.*;
RootElement(根元素)
package forum20127191;
import javax.xml.bind.annotation.*;
@XmlRootElement(name="RootElement")
public class RootElement {
private String foo;
public String getFoo() {
return foo;
}
public void setFoo(String foo) {
this.foo = foo;
}
}
如果您不希望在包级别@XmlSchema
注释中指定命名空间限定,则需要对元素的每个映射进行命名空间限定。您的 RootElement
类需要更改为外观。
package forum20127191;
import javax.xml.bind.annotation.*;
@XmlRootElement(name="RootElement", namespace="http://example.com")
public class RootElement {
private String foo;
@XmlElement(namespace="http://example.com")
public String getFoo() {
return foo;
}
public void setFoo(String foo) {
this.foo = foo;
}
}
假设我在resources/a目录下有一个.xsd文件,在resources/b目录下有一个b.xsd文件。a、 xsd和b.xsd有自己的名称空间:http://a.com和http://b.com.最后,a.xsd导入b.xsd。 我想配置maven-jaxb2-plugin,以便在com包中生成A.java。包com中的a和B.java。B 如何将一个命名空间中的所有xsd文件绑定到一个包,
这是我的包信息级别映射 这是我的输入xml(只是根元素) 您可以注意到URI“http://www.company.com/commons“使用不同的前缀映射。<br>解组工作正常,使用 在一些输入修改之后,我需要将文件持久化(使用原始的名称空间前缀)。 问题是:< br >在解组期间,有什么方法可以检索名称空间/前缀映射吗?
这是我的xml,需要把它转换成Java。我使用了jaxb 并抛出以下异常javax.xml.bind.unmarshalException:意外元素(URI:“http://www.ae.com/event/load”,local:“order”)。需要的元素为<{}LM:order>
我有一个xml,我正在尝试解体。它失败,因为它缺少必需的命名空间。 需要成为: 这个NamespaceFilter的例子只处理一个名称空间。我需要一个将追加两个名称空间。
我试图从通过JAXB生成的类序列化XML。 班级: 文件“package-info.java”: 编组器(简化,无需错误处理): 此代码生成: 我期待这样的事情: 我有一个类似的代码并且工作正常,但是我不明白为什么这个代码不显示命名空间。有线索吗?谢谢!
我有情况, 有一个sample.xsd(旧版本-没有命名空间)。为同一个XSD文件使用XJC生成JAXB类。我得到了一个使用JAXB类基于XSD解封XML数据文件的示例。sample.xsd文件已更改(新版本-添加的命名空间)。再次为新的XSD文件使用XJC生成JAXB类。该示例已更新,现在可以用于新的XSD文件 现在我有一个情况,我正在获取基于旧XSD的XML数据文件,我想使用更新的示例文件来解