相关疑难解决方法(0)

Jaxb,Class有两个同名的属性

使用jaxb,我尝试读取xml文件只有xml文件中的一些元素很有趣,所以我想跳过很多元素

xml内容

xml我尝试阅读

<?xml version="1.0" encoding="UTF-8"?>
<!--Sample XML file generated by XMLSpy v2010 rel. 3 sp1 (http://www.altova.com)-->
<flx:ModeleREP xsi:schemaLocation="urn:test:mod_rep.xsd mod_rep.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:flx="urn:test:mod_rep.xsd">
<flx:DocumentHeader>
    <flx:Identification v="04489"/>
</flx:DocumentHeader>
<flx:TimeSeries>
    <flx:Identification v="test1a"/>
    <flx:BusinessType v="A01"/>
    <flx:Product v="123a"/>
    <flx:ResourceObject codingScheme="N" v="testa"/>
    <flx:Period>
        <flx:TimeInterval v="2011-07-02T00:00/2011-07-16T00:00"/>
        <flx:Resolution v="PT2H"/>
        <flx:Pt>
            <flx:P v="1"/>
            <flx:Q unitCode="String" v="1.0"/>
            <flx:A currencyIdentifier="String" v="195.0"/>
        </flx:Pt>
    </flx:Period>
</flx:TimeSeries>
<flx:TimeSeries>
    <flx:Identification v="test2a"/>
    <flx:BusinessType v="A01"/>
    <flx:Product v="a123b"/>
    <flx:ResourceObject codingScheme="N" v="test2"/>
    <flx:Period>
        <flx:TimeInterval v="2011-07-02T00:00/2011-07-16T00:00"/>
        <flx:Resolution v="PT2H"/>
        <flx:Pt>
            <flx:P v="1"/>
            <flx:Q unitCode="String" v="1.0"/>
            <flx:A currencyIdentifier="String" v="195.0"/>
        </flx:Pt>
        <flx:Pt>
            <flx:P …
Run Code Online (Sandbox Code Playgroud)

java xml jaxb

110
推荐指数
12
解决办法
11万
查看次数

XML 生成后的 JAXB 日期时间格式

我有一个简短的问题:

从 xsd 生成 xjc 类之后,我的对象需要日历,这就是我提供的。但是在将其编组为 XML 后,我的日期格式如下:

<InfoDateTime v="2013-09-03T00:00:00+02:00"/>
Run Code Online (Sandbox Code Playgroud)

而我想要:

<InfoDateTime v="2013-09-03T00:00:00Z"/>
Run Code Online (Sandbox Code Playgroud)

我不使用带注释的 jaxb 而是使用绑定文件,但是否可以不创建可以解析日期和字符串的类?

谢谢!

java xml date jaxb

5
推荐指数
1
解决办法
5657
查看次数

未指定时间时,JAXB 将 dateTime 编组为空白值

我有一个 XMLGregorianCalendar 对象,我正在尝试将其封送到 xml 字符串中。我通过解组另一个 xml 对象收到了这个对象。两者都是“dateTime”类型,所以它们应该完全相同......

然而,当我对其进行封送时,它在 xml 中显示为空白。

为了说明这个问题,我将所有内容都剥离到了最基本的部分,并在此处的示例中使其通用。2个java文件,复制,粘贴,按原样运行。您应该收到的输出是:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TheObject>
    <DOB>2016-09-16</DOB>
</TheObject>
Run Code Online (Sandbox Code Playgroud)

但是,唉,它返回:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TheObject>
    <DOB></DOB>
</TheObject>
Run Code Online (Sandbox Code Playgroud)

注意:在 Pastebin 示例中,我动态创建一个 xmlGregorianCalendar,而不是像下面的代码那样从另一个对象中获取一个 xmlGregorianCalendar,因此从技术上讲,这不是同一件事,但我认为最终它说明了完全相同的问题...请纠正我我错了...

要为我的具体问题添加更多背景信息:

//Here are the objects themselves (names changed to protect the innocent)
//complete with annotations... 
public class Object1{
    ...
    @XmlElement(name = "DOB")
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar dob;
    ...
}

public class Object2{
    ...
    @XmlElement(name = "DOB")
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar dob;
    ...
}

//and …
Run Code Online (Sandbox Code Playgroud)

java jaxb

5
推荐指数
1
解决办法
5185
查看次数

标签 统计

java ×3

jaxb ×3

xml ×2

date ×1