我已经提供了一个XSD文件来解组从外部Web服务返回的XML。
我能够将我收到的XML解组到JAXB类中。但是由于生成的JAXB类的结构深度,我不确定在检索值时如何 null 检查代码。
检索学生姓名的示例,代码如下 -
jaxbResponse.getStudentDetails().get(0).getStudent().get(0).getName().get(0).getGivenName();
如果我必须 null 检查并且索引检查此代码返回的列表,那会非常混乱。
这只是一个例子,我需要使用类似于上面代码的代码来获取大约50个参数。我不知道什么时候我会得到 NullPointerException 或 IndexOutofBoundsException 。
我刚接触JaxB课程,我需要一些帮助。
提前致谢。
答案 0 :(得分:0)
您的示例的模式看起来像是从简单的<xs:element minOccurs="{something}" maxOccurs="unbounded">
生成的List,在这种情况下,您永远不应该获得null
列表(尽管如果minOccurs
是null
,您可能会获得一个空列表0),您也不会从列表中获得@XmlElementWrapper
个值。如果您有{{1}},或者您的架构将元素声明为nillable,则只需要担心空值。
如果没有看到(至少是摘录)您的架构和/或生成的类,我就无法更具体。