0

私のアプリケーションは、XML を生成する別のアプリケーションと統合され、XSD とサンプル XML が提供されました。

この作品について質問があります:

XSD :

<element name="IubLink">
    <complexType>
        <complexContent>
            <extension base="xn:NrmClassXmlType">
                <sequence>
                    <element name="attributes" minOccurs="0">
                        <complexType>
                            <all>
                                <element name="userLabel" minOccurs="0"/>
                                <element name="iubLinkUtranCell" minOccurs="0"/>
                                <element name="iubLinkNodeBFunction" minOccurs="0"/>
                            </all>
                        </complexType>
                    </element >
                    <choice minOccurs="0" maxOccurs="unbounded">
                        <element ref="xn:VsDataContainer"/>
                    </choice>
                </sequence>
            </extension>
        </complexContent >
    </complexType>
</element >

XML:

<un:IubLink id="Iub_RBS0087">
<un:attributes>
    <un:userLabel>Iub_RBS0087</un:userLabel>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00871</un:iubLinkUtranCell>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00872</un:iubLinkUtranCell>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00873</un:iubLinkUtranCell>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00875</un:iubLinkUtranCell>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00876</un:iubLinkUtranCell>
    <un:iubLinkUtranCell>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RNC04,ManagedElement=1,RncFunction=1,UtranCell=00877</un:iubLinkUtranCell>
    <un:iubLinkNodeBFunction>SubNetwork=ONRM_RootMo_R,SubNetwork=RNC04,MeContext=RBS0087,ManagedElement=1,NodeBFunction=1</un:iubLinkNodeBFunction>
</un:attributes>
<xn:VsDataContainer id="1">
    <xn:attributes>
        <xn:vsDataType>vsDataIubEdch</xn:vsDataType>
        <xn:vsDataFormatVersion>EricssonSpecificAttributes.12.26</xn:vsDataFormatVersion>
        <es:vsDataIubEdch>
            <es:edchDataFrameDelayThreshold>60</es:edchDataFrameDelayThreshold>
            <es:userLabel>1</es:userLabel>
        </es:vsDataIubEdch>
    </xn:attributes>
</xn:VsDataContainer>

Java では、 IubLinkUtranCell のリストを取得したいのですが、JAXB は次のように生成しました。

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {

})
public static class Attributes {

    protected Object userLabel;
    protected Object iubLinkUtranCell;
    protected Object iubLinkNodeBFunction;

したがって、すべての IubLinkUtranCell を 1 つの Object として取得します。、どうすればそれらをループできますか?

4

1 に答える 1

0

属性クラスで「IubLinkNodeBFunction」のリストを作成する必要があります。

 @XmlAccessorType(XmlAccessType.FIELD)
 @XmlType(name = "", propOrder = {

 })
 public static class Attributes {

protected Object userLabel;
@XMlElement(name = "iubLinkUtranCell")
protected List<IubLinkUtranCell> iubLinkUtranCellList;
protected Object iubLinkNodeBFunction;

そして、「IubLinkUtranCell」クラスを作成する必要があり、このクラスにさらに属性がある場合は、それらをクラスに追加してそれらにアクセスできます。

于 2013-09-27T11:57:53.933 に答える