You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: src/doc/docs/faq.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -25,15 +25,15 @@ You can still revoke certificates without account key pair though, see [here](us
25
25
26
26
**Cause:** There may be multiple causes for that, but usually it means that the CA could not verify your challenge.
27
27
28
-
**Solution:** If the status is `INVALID`, invoke `Challenge.getError()` to get the cause of the failure. For example, you can log the output of `challenge.getError().toString()`. Make sure that your challenge is ready for verification _before_ you invoke `Challenge.trigger()`. Also make sure not to remove the challenge until the status is either `VALID` or `INVALID`.
28
+
**Solution:** If the status is `INVALID`, invoke `Challenge.getError()` to get the cause of the failure. For example, you can log the output of `challenge.getError().toString()`. Make sure that your challenge is ready for verification _before_ you invoke `Challenge.trigger()`. Also make sure not to remove the challenge until the status is either `VALID` or `INVALID`. Read more about errors [here](usage/errors.md).
29
29
30
30
## My `Order` returns status `INVALID`. What has gone wrong?
31
31
32
32
**Symptom:** Your challenge(s) passed as `VALID`. However when you execute the order, it changes to status `INVALID`. No certificate was issued.
33
33
34
34
**Cause:** There may be multiple reasons for that. It seems that you are still missing steps that are required by the CA before completion.
35
35
36
-
**Solution:** If the status is `INVALID`, invoke `Order.getError()` to get the cause of the failure. For example, you can log the output of `order.getError().toString()`.
36
+
**Solution:** If the status is `INVALID`, invoke `Order.getError()` to get the cause of the failure. For example, you can log the output of `order.getError().toString()`. Also see [here](usage/errors.md).
37
37
38
38
## My `Order` seems to be stuck in status `PROCESSING`. What can I do?
39
39
@@ -88,5 +88,5 @@ Unfortunately, manual action is required in any case, there is no way to automat
*[Let's Encrypt Community](https://community.letsencrypt.org/) - If the question is _acme4j_ related, please mention it in your post.
91
+
*[Let's Encrypt Community](https://community.letsencrypt.org/) - If the question is _acme4j_ related, please mention it in your post. I don't read the forum every day, but I will answer as soon as I notice it.
The CA will send all errors as [RFC7807](https://datatracker.ietf.org/doc/html/rfc7807) problem documents. _acme4j_ parses these documents and provides a `Problem` representation of them.
4
+
5
+
The simplest way to handle the problem is to log the result of its `.toString()` method. It contains a summary of all important fields.
6
+
7
+
There are other methods that return machine- and human-readable details and subproblems. With `.asJSON()` you can also get a JSON representation of the full problem document, in case there are non-standard fields.
8
+
9
+
## Errors while Ordering
10
+
11
+
If your challenge has failed, you can retrieve the cause of the failure with `Challenge.getError()` or `Order.getError()`. It returns an `Optional` containing further details why the challenge has failed.
12
+
13
+
## Exceptions
14
+
15
+
`AcmeServerException` and its subclasses provide a `getProblem()` method that returns the `Problem` that caused the exception. The exception message also contains a summary of the problem.
0 commit comments