Skip to content

Commit

Permalink
Guard against ContextNotActiveException in ResteasyReactiveContextLoc…
Browse files Browse the repository at this point in the history
…aleResolver

Fixes: #23195
  • Loading branch information
geoand committed Jan 26, 2022
1 parent eccc7f4 commit 536d8ca
Showing 1 changed file with 10 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package io.quarkus.hibernate.validator.runtime.jaxrs;

import javax.enterprise.context.RequestScoped;
import javax.inject.Singleton;
import javax.ws.rs.core.HttpHeaders;

import io.quarkus.arc.Arc;
import io.quarkus.arc.DefaultBean;

@Singleton
Expand All @@ -18,11 +20,14 @@ public ResteasyReactiveContextLocaleResolver(HttpHeaders headers) {

@Override
protected HttpHeaders getHeaders() {
try {
headers.getLength(); // this forces the creation of the actual object which will fail if there is no request in flight
return headers;
} catch (IllegalStateException e) {
return null;
if (Arc.container().getActiveContext(RequestScoped.class) != null) { // only try to obtain headers if there is a request scope
try {
headers.getLength(); // this forces the creation of the actual object which will fail if there is no request in flight
return headers;
} catch (IllegalStateException ignored) {

}
}
return null;
}
}

0 comments on commit 536d8ca

Please sign in to comment.