This is an automated email from the ASF dual-hosted git repository.

ashakirin pushed a commit to branch 3.2.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/3.2.x-fixes by this push:
     new 60e6f43  CXF-7983: fixed JOSE ClientResponseFilter for No Content 
response
60e6f43 is described below

commit 60e6f437f43e7b4559d468908c2020220ec255b8
Author: Andrei Shakirin <[email protected]>
AuthorDate: Tue Mar 12 23:35:53 2019 +0100

    CXF-7983: fixed JOSE ClientResponseFilter for No Content response
---
 .../cxf/rs/security/jose/jaxrs/JweClientResponseFilter.java       | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git 
a/rt/rs/security/jose-parent/jose-jaxrs/src/main/java/org/apache/cxf/rs/security/jose/jaxrs/JweClientResponseFilter.java
 
b/rt/rs/security/jose-parent/jose-jaxrs/src/main/java/org/apache/cxf/rs/security/jose/jaxrs/JweClientResponseFilter.java
index 0639494..082f7dc 100644
--- 
a/rt/rs/security/jose-parent/jose-jaxrs/src/main/java/org/apache/cxf/rs/security/jose/jaxrs/JweClientResponseFilter.java
+++ 
b/rt/rs/security/jose-parent/jose-jaxrs/src/main/java/org/apache/cxf/rs/security/jose/jaxrs/JweClientResponseFilter.java
@@ -26,6 +26,7 @@ import javax.ws.rs.HttpMethod;
 import javax.ws.rs.client.ClientRequestContext;
 import javax.ws.rs.client.ClientResponseContext;
 import javax.ws.rs.client.ClientResponseFilter;
+import javax.ws.rs.core.Response;
 
 import org.apache.cxf.jaxrs.utils.HttpUtils;
 import org.apache.cxf.rs.security.jose.common.JoseUtils;
@@ -36,7 +37,8 @@ public class JweClientResponseFilter extends 
AbstractJweDecryptingFilter impleme
     @Override
     public void filter(ClientRequestContext req, ClientResponseContext res) 
throws IOException {
         if (isMethodWithNoContent(req.getMethod())
-            || isCheckEmptyStream() && !res.hasEntity()) {
+                || isStatusCodeWithNoContent(res.getStatus())
+                || isCheckEmptyStream() && !res.hasEntity()) {
             return;
         }
         JweDecryptionOutput out = decrypt(res.getEntityStream());
@@ -54,4 +56,8 @@ public class JweClientResponseFilter extends 
AbstractJweDecryptingFilter impleme
     protected boolean isMethodWithNoContent(String method) {
         return HttpMethod.DELETE.equals(method) || 
HttpUtils.isMethodWithNoResponseContent(method);
     }
+
+    protected boolean isStatusCodeWithNoContent(int statusCode) {
+        return statusCode == Response.Status.NO_CONTENT.getStatusCode();
+    }
 }

Reply via email to