При преобразовании объекта карты в XML я получаю сообщение об ошибке - PullRequest
0 голосов
/ 10 апреля 2019

Вот мой метод, в котором я пытаюсь преобразовать xmlt в объект карты и наоборот.Преобразование объекта xml в карту работает для меня, но я получаю ошибку при преобразовании объекта карты в xml (см. код ниже).

        public client XMLtoclient(String filename) throws Exception {
                JAXBContext jaxbContext = JAXBContext.newInstance(client.class);
                Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
                client client = (client) jaxbUnmarshaller.unmarshal(
                        new File("C://Users//dasso//Desktop//Migration_XML//New folder/client_configuration_CMG.xml"));
                System.out.println(client);
                ObjectMapper oMapper = new ObjectMapper();
                @SuppressWarnings("unchecked")
                Map<String, Object> map = oMapper.convertValue(client, Map.class);
                System.out.println("map" + map);
                map.replace("client_id", "JHKANNU", "1111");
                System.out.println("Updated map" + map);


                // converting map to xml

Ошибка сброса кода ниже.Кто-то, не могли бы вы помочь мне выяснить причину ошибки ниже, так что это будет полезно для меня.Спасибо

JAXBContext jaxbContext1 = JAXBContext.newInstance(client.class);
                    Marshaller jaxbMarshaller = jaxbContext1.createMarshaller();
                    //Convert map to xml

                    jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);

                    jaxbMarshaller.marshal(map, System.out);
                    jaxbMarshaller.marshal(map,
                    new File("C://Users//dasso//Desktop//Migration_XML//New folder/client_configuration_CMG.xml"));

                    return client;

                }

Ниже находится консоль, здесь я сталкиваюсь с проблемой

        javax.xml.bind.JAXBException: class java.util.LinkedHashMap nor any of its super class is known to this context.
            at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:567) ~[na:1.8.0_151]
            at com.sun.xml.internal.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:467) ~[na:1.8.0_151]
            at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:308) ~[na:1.8.0_151]
            at com.sun.xml.internal.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:236) ~[na:1.8.0_151]
            at javax.xml.bind.helpers.AbstractMarshallerImpl.marshal(AbstractMarshallerImpl.java:95) ~[na:1.8.0_151]
            at com.migration.ConfigMigration.services.MigrationXmlService.XMLtoclient(MigrationXmlService.java:199) ~[classes/:na]
            at com.migration.ConfigMigration.services.MigrationXmlService.xmltest(MigrationXmlService.java:173) ~[classes/:na]
            at com.migration.ConfigMigration.controller.MigrationXmlController.xmltest(MigrationXmlController.java:55) ~[classes/:na]
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_151]
            at 
        2019-04-10 12:23:58.395  WARN 8680 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...