文字列xmlをJavaオブジェクトに解析/umarshalingする初心者です。文字列 xml 内の文字列 xml を取得し、Java オブジェクトに変換する方法を知りたいだけです。
HTTP GET からの私の文字列 xml は次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/"><?xml version="1.0" encoding="utf-8" ?
><MyList><Obj>Im obj 1</Obj><Obj>Im obj
1</Obj></MyList></string>
stackoverflow が「文字列」であるルート要素を削除し、
<?xml version="1.0" encoding="utf-8" ?> <MyList> <Obj>Im obj 1</Obj> <Obj>を表示していることに気付きましたこの文字列 xml をコード ブロック内に配置しなかった場合は、すぐに obj 2</Obj> </MyList> になります。
JDom 2 を使用しようとしていますが、うまくいきません。ルート要素のみを取得し、子は取得しません。
私もJAXBを使用しました:
ルート要素は取得できますが、子要素は取得できません。これが私のコードです:
JAXBContext jc = JAXBContext.newInstance(myPackage.String.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
JAXBElement<MyList> jaxbElement = unmarshaller.unmarshal(new StreamSource(new
ByteArrayInputStream(byteArray)), MyList.class);
System.out.println(jaxbElement.getClass()); --> this will print myPackage.MyList
MyList myList = (MyList) jaxbElement.getValue();
System.out.println("myList.Obj = " + myList.getObjs().size()); --> this will return 0