/ / Plik XML JAXB do JSON - java, json, xml, jaxb

Plik XML JAXB do JSON - java, json, xml, jaxb

Tworzę plik zrzutu XML za pomocą JAXB, a potem idępoprzez kilka transformacji i dotrzeć do pliku XML w pożądanym przeze mnie formacie. Teraz chcę przekonwertować ten plik XML, który jest poprawnie ewakuowany i zakodowany w pliku JSON przy użyciu JAXB.

NIE próbuję przekazać obiektu do JSON, ale do zawartości pliku.

To sonduje mój obiekt do jsona:

    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);

Jak to zrobić dla pliku, który został utworzony przez JAXB i transformacji, nazywa się employeeFormatC.xml

Powód musi pochodzić z pliku, a nie z niegoobiekt jest, ponieważ używam różnych stylów xslt do sformatowania oryginalnego wyjścia xml. Nie widzę powodu, aby to zrobić dla json, kiedy mogę po prostu konwertować już wygenerowany i sformatowany xml.

Odpowiedzi:

1 dla odpowiedzi № 1

JAXB nie ma zamiaru konwertować XML bezpośrednio na JSON.Możesz używać JAXB tylko do marszu i unmarshal od reprezentacji (XML / JSON) do obiektów Java.

Jeśli chcesz konwertować z przekształconego XML na JSON z JAXB, powinieneś utworzyć obiekty Java, które odzwierciedlają przekształcony XML, niepopularyzować XML do tych obiektów, a następnie przekazać je do JSON.

Spojrzeć na to pytanie dla rozwiązań innych niż JAXB.