diff --git a/acme4j-client/src/main/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredException.java b/acme4j-client/src/main/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredException.java index 0c43ee86..457e6efd 100644 --- a/acme4j-client/src/main/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredException.java +++ b/acme4j-client/src/main/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredException.java @@ -69,4 +69,11 @@ public class AcmeUserActionRequiredException extends AcmeServerException { } } + @Override + public String toString() { + return getProblem().getInstance() + .map(uri -> "Please visit " + uri + " - details: " + getProblem()) + .orElseGet(super::toString); + } + } diff --git a/acme4j-client/src/test/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredExceptionTest.java b/acme4j-client/src/test/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredExceptionTest.java index ff744c45..81177379 100644 --- a/acme4j-client/src/test/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredExceptionTest.java +++ b/acme4j-client/src/test/java/org/shredzone/acme4j/exception/AcmeUserActionRequiredExceptionTest.java @@ -45,6 +45,7 @@ public class AcmeUserActionRequiredExceptionTest { assertThat(ex.getMessage()).isEqualTo(detail); assertThat(ex.getTermsOfServiceUri().orElseThrow()).isEqualTo(tosUri); assertThat(ex.getInstance()).isEqualTo(instanceUrl); + assertThat(ex.toString()).isEqualTo("Please visit " + instanceUrl + " - details: " + detail); } /** @@ -64,6 +65,7 @@ public class AcmeUserActionRequiredExceptionTest { assertThat(ex.getMessage()).isEqualTo(detail); assertThat(ex.getTermsOfServiceUri()).isEmpty(); assertThat(ex.getInstance()).isEqualTo(instanceUrl); + assertThat(ex.toString()).isEqualTo("Please visit " + instanceUrl + " - details: " + detail); } }