@Test public void marshallingProducesNonJaxbException() { final KeyDataConfig input = new KeyDataConfig(new PrivateKeyData("VAL", null, null, null, null), PrivateKeyType.UNLOCKED); IOException exception = new IOException("What you talking about willis?"); OutputStream out = mock( OutputStream.class, (iom) -> { throw exception; }); final Throwable throwable = catchThrowable(() -> JaxbUtil.marshal(input, out)); assertThat(throwable) .isInstanceOf(ConfigException.class) .hasCauseExactlyInstanceOf(javax.xml.bind.MarshalException.class); }
public static void marshal(Object object, OutputStream outputStream) { try { MarshallerBuilder.create().build().marshal(object, outputStream); } catch (Throwable ex) { Optional<ConstraintViolationException> validationException = unwrapConstraintViolationException(ex); if (validationException.isPresent()) { throw validationException.get(); } throw new ConfigException(ex); } }
JaxbUtil { public static void marshal(Object object, OutputStream outputStream) { try { MarshallerBuilder.create().build().marshal(object, outputStream); } catch (Throwable ex) { Optional<ConstraintViolationException> validationException = unwrapConstraintViolationException(ex); if (validationException.isPresent()) { throw validationException.get(); } throw new ConfigException(ex); } } }
JaxbUtil { public static void marshal(Object object, OutputStream outputStream) { try { MarshallerBuilder.create().build().marshal(object, outputStream); } catch (Throwable ex) { Optional<ConstraintViolationException> validationException = unwrapConstraintViolationException(ex); if (validationException.isPresent()) { throw validationException.get(); } throw new ConfigException(ex); } } private  JaxbUtil(); }
JaxbUtil { public static void marshal(Object object, OutputStream outputStream) { try { MarshallerBuilder.create().build().marshal(object, outputStream); } catch (Throwable ex) { Optional<ConstraintViolationException> validationException = unwrapConstraintViolationException(ex); if (validationException.isPresent()) { throw validationException.get(); } throw new ConfigException(ex); } } private  JaxbUtil(); static T unmarshal(InputStream inputStream, Class<T> type); static void marshal(Object object, OutputStream outputStream); static void marshalWithNoValidation(Object object, OutputStream outputStream); static String marshalToString(Object object); static String marshalToStringNoValidation(Object object); static void marshalMasked(Config object, OutputStream outputStream); }
JaxbUtil { public static void marshal(Object object, OutputStream outputStream) { try { MarshallerBuilder.create().build().marshal(object, outputStream); } catch (Throwable ex) { Optional<ConstraintViolationException> validationException = unwrapConstraintViolationException(ex); if (validationException.isPresent()) { throw validationException.get(); } throw new ConfigException(ex); } } private  JaxbUtil(); static T unmarshal(InputStream inputStream, Class<T> type); static void marshal(Object object, OutputStream outputStream); static void marshalWithNoValidation(Object object, OutputStream outputStream); static String marshalToString(Object object); static String marshalToStringNoValidation(Object object); static void marshalMasked(Config object, OutputStream outputStream); static final Class[] JAXB_CLASSES; }