@Test
  public void throws_whenObjectInputFilterClassNotFound() {
    Supplier<ObjectInputFilterApi> objectInputFilterApiSupplier = () -> {
      throw new UnsupportedOperationException("ObjectInputFilter is not available.",
          new ClassNotFoundException("sun.misc.ObjectInputFilter"));
    };

    Throwable thrown = catchThrowable(() -> {
      new ReflectiveFacadeGlobalSerialFilterFactory(objectInputFilterApiSupplier)
          .create("pattern", emptySet());
    });

    assertThat(thrown)
        .isInstanceOf(UnsupportedOperationException.class)
        .hasMessage("ObjectInputFilter is not available.")
        .hasRootCauseInstanceOf(ClassNotFoundException.class)
        .hasRootCauseMessage("sun.misc.ObjectInputFilter");
  }
Throws ClassNotFoundException nested inside an UnsupportedOperationException when the trying \
to load the JDK ObjectInputFilter via reflection throws ClassNotFoundException.
geode-serialization/src/test/java/org/apache/geode/internal/serialization/filter/ReflectiveFacadeGlobalSerialFilterFactoryTest.java