私はElasticSearchを使用して、オブジェクト、トラック、およびトレースモデルで発生しているイベントに関するいくつかのデータを保存しています。そのために、XSDファイルを使用してモデルクラスを生成するためにJAXBを使用しました。 データを簡単に変換するESにデータを保存することができます。データのデータはXML形式でPOJOに渡され、その後はJSONに渡されます。 私が持っている問題は、データを取り戻すことです。私は、Webサービス上でPOJO(JAXBを使用)とPOJOをXMLに同じロジックJSONを使用しようとしています。そのような:JAXBを使用してJSONをPOJOに変換する
JAXBContext jc = JAXBContext.newInstance(EPCISDocumentType.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
unmarshaller.setProperty("eclipselink.media-type", "application/json");
unmarshaller.setProperty("eclipselink.json.include-root", true);
String eventJSON = elasticEvent.getSpecific("event", "raw", eventID);
文字列は、予想されるイベントが付属していますが、私はPOJOに変換しようとすると、オブジェクトは、最も外側のクラス(EPCISDocumentType)とが、0の内容でのみ付属しています。
StreamSource eventStream = new StreamSource(new StringReader(eventJSON));
EPCISDocumentType foundEvent = unmarshaller.unmarshal(eventStream,EPCISDocumentType.class).getValue();
問題は、これは、 - 私は元帥を行うにはまったく同じライブラリを使用して起こっている理由ですが、私は戻って同じコンテンツにそれを非整列化can't: - 私はそのようにしよう。