### Question:
JaxbBodySerDe implements BodySerDe { @Override public void configure(Map<String, ?> properties) { this.jaxbContext = ConfigLoading.loadCollectionOrThrow(properties, JAXB_PACKAGES_PROPERTY, Function.identity(), Collectors.collectingAndThen(Collectors.joining(":"), JaxbBodySerDe::createJaxbContext)); }  @Override void configure(Map<String, ?> properties); static final String JAXB_PACKAGES_PROPERTY; }### Answer:
@Test public void dataCanBeSerializedToXmlAndBack() { JaxbBodySerializer<AbstractXmlData> serializer = new JaxbBodySerializer<>(); JaxbBodyDeserializer<AbstractXmlData> deserializer = new JaxbBodyDeserializer<>(); serializer.configure(Collections.singletonMap(JaxbBodySerDe.JAXB_PACKAGES_PROPERTY, AbstractXmlData.class.getPackage().getName())); deserializer.configure(Collections.singletonMap(JaxbBodySerDe.JAXB_PACKAGES_PROPERTY, AbstractXmlData.class.getPackage().getName())); ConcreteXmlData data = new ConcreteXmlData(); data.setData("DATA"); byte[] serialized = serializer.serialize(data); assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><concreteXmlData><data>DATA</data></concreteXmlData>", new String(serialized)); AbstractXmlData result = deserializer.deserialize(serialized); assertTrue(result instanceof ConcreteXmlData); assertEquals(data, result); }