私はJAXBでXMLダンプファイルを作成していくつかの変換を経て、望む形式のXMLファイルに到達します。今私は適切にエスケープされ、JAXBを使用してJSONファイルにエンコードされているこのXMLファイルを変換したい。
私はオブジェクトをJSONにマーシャリングするのではなく、Fileの内容をマーシャリングしようとしています。
これは私のオブジェクトをjsonにまとめる:
JAXBContext jc = JAXBContext.newInstance(Employee.class);
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(MarshallerProperties.MEDIA_TYPE, "application/json");
marshaller.setProperty(MarshallerProperties.JSON_INCLUDE_ROOT, true);
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(employee, System.out);
JAXBと変換によって作成されたファイルに対してこれを行うにはどうすればいいですか?それはemployeeFormatC.xml
それがファイルからである必要がある理由私は様々なスタイルのxsltを使って元のxml出力をフォーマットしているからです。私はjsonのためにそれを行う理由は見当たりません。私はすでに生成され、フォーマットされたxmlを変換することができます。
回答:
回答№1は1JAXBは、XMLを直接JSONに変換することは意図していません.JAXBを使用して表現(XML / JSON)からJavaオブジェクトへの整列化および非整列化を行うことができます。
変換されたXMLからJAXBを使用してJSONに変換する場合は、変換されたXMLを反映するJavaオブジェクトを作成し、そのオブジェクトにXMLを非整列化してJSONにマーシャリングする必要があります。
を見てみましょう この質問 非JAXBソリューションの場合