diff --git a/feed.xml b/feed.xml index 7c53a04ebf7..03b666149f6 100644 --- a/feed.xml +++ b/feed.xml @@ -5,7 +5,7 @@ Quarkus https://quarkus.io Quarkus: Supersonic Subatomic Java - Tue, 30 Jul 2024 03:03:42 +0000 + Wed, 31 Jul 2024 03:03:53 +0000 diff --git a/version/main/guides/all-builditems.html b/version/main/guides/all-builditems.html index e688152f0aa..88b6590aea6 100644 --- a/version/main/guides/all-builditems.html +++ b/version/main/guides/all-builditems.html @@ -12526,7 +12526,7 @@

REST - Se
-

When an Exception of this type is thrown and no jakarta.ws.rs.ext.ExceptionMapper exists, then RESTEasy Reactive will attempt to locate an ExceptionMapper for the cause of the Exception.

+

When an Exception of this type is thrown and no jakarta.ws.rs.ext.ExceptionMapper exists, then RESTEasy Reactive will attempt to locate an ExceptionMapper for the cause of the Exception.

@@ -12534,7 +12534,7 @@

REST - Se

Show more

-

java.lang.Class<? extends Throwable> throwableClass

+

java.lang.String throwableClassName

No Javadoc found

diff --git a/version/main/guides/cdi-reference.html b/version/main/guides/cdi-reference.html index 267bea89a2e..c66b0c249d0 100644 --- a/version/main/guides/cdi-reference.html +++ b/version/main/guides/cdi-reference.html @@ -291,7 +291,7 @@

Wor <plugin> <groupId>io.smallrye</groupId> <artifactId>jandex-maven-plugin</artifactId> - <version>3.2.0</version> + <version>3.2.1</version> <executions> <execution> <id>make-index</id> diff --git a/version/main/guides/rest.html b/version/main/guides/rest.html index b9a94e688f9..7dc29131e20 100644 --- a/version/main/guides/rest.html +++ b/version/main/guides/rest.html @@ -3082,6 +3082,52 @@

Excep

+
+ + + + + +
+ + +
+

When mapping an exception to a @ServerExceptionMapper method, the cause of the exception normally does not come into play.

+
+
+

However, some exception types in Java only serve as wrappers for other exceptions. Often, checked exceptions are wrapped into RuntimeException just to not have them declared in method throws parameters. +Working with CompletionStage for example, will require CompletionException. There are many such exception types that are just wrappers around the real cause of the exception.

+
+
+

If you wish to make sure your exception mapper is called for your exception type even when it is wrapped by one of those wrapper exceptions, you can use @UnwrapException on the exception wrapper type:

+
+
+
+
public class MyExceptionWrapper extends RuntimeException {
+    public MyExceptionWrapper(Exception cause) {
+        super(cause);
+    }
+}
+
+
+
+

If you don’t control that exception wrapper type, you can place the annotation on any class and specify the exception wrapper types it applies to as annotation parameter:

+
+
+
+
@UnwrapException({CompletionException.class, RuntimeException.class})
+public class Mapper {
+
+    @ServerExceptionMapper
+    public Response handleMyException(MyException x) {
+        // ...
+    }
+
+}
+
+
+
+
diff --git a/version/main/guides/spring-data-jpa.html b/version/main/guides/spring-data-jpa.html index 7abfcd1aa35..72ed60e6d3e 100644 --- a/version/main/guides/spring-data-jpa.html +++ b/version/main/guides/spring-data-jpa.html @@ -1001,6 +1001,9 @@