Repository: tomee
Updated Branches:
  refs/heads/fb_tomee8 76cd27fc5 -> a20c7a346


ensure cxf BeanValidationProvider handles validation properly and doesnt mix 
returned entity and methods


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/a20c7a34
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/a20c7a34
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/a20c7a34

Branch: refs/heads/fb_tomee8
Commit: a20c7a346321c83a1ab74c6aca7fc048a198f75c
Parents: 76cd27f
Author: Romain Manni-Bucau <rmannibu...@apache.org>
Authored: Wed May 16 23:14:34 2018 +0200
Committer: Romain Manni-Bucau <rmannibu...@apache.org>
Committed: Wed May 16 23:14:34 2018 +0200

----------------------------------------------------------------------
 .../org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java     | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/a20c7a34/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
----------------------------------------------------------------------
diff --git 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
index e10172f..e155b9d 100644
--- 
a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
+++ 
b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java
@@ -886,7 +886,7 @@ public class CxfRsHttpListener implements RsHttpListener {
                     
SystemInstance.get().getProperty("openejb.cxf.rs.bval.active",
                             
serviceConfiguration.getProperties().getProperty(CXF_JAXRS_PREFIX + 
"bval.active", "true")));
             if (factory.getFeatures() == null && bvalActive) {
-                factory.setFeatures(new ArrayList<Feature>());
+                factory.setFeatures(new ArrayList<>());
             } else if (bvalActive) { // check we should activate it and user 
didn't configure it
                 for (final Feature f : factory.getFeatures()) {
                     if (BeanValidationFeature.class.isInstance(f)) {
@@ -908,7 +908,7 @@ public class CxfRsHttpListener implements RsHttpListener {
                 }
             }
             if (bvalActive) { // bval doesn't need the actual instance so 
faking it to avoid to lookup the bean
-                final BeanValidationProvider provider = new 
BeanValidationProvider();
+                final BeanValidationProvider provider = new 
BeanValidationProvider(); // todo: close the factory
 
                 final BeanValidationInInterceptor in = new 
JAXRSBeanValidationInInterceptor() {
                     @Override
@@ -926,6 +926,7 @@ public class CxfRsHttpListener implements RsHttpListener {
                         return 
CxfRsHttpListener.this.getServiceObject(message);
                     }
                 };
+                out.setEnforceOnlyBeanConstraints(true);
                 out.setProvider(provider);
                 out.setServiceObject(FAKE_SERVICE_OBJECT);
                 factory.getOutInterceptors().add(out);

Reply via email to