You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/11/11 11:05:03 UTC
tomee git commit: TOMEE-1443 cxf.jaxws.wsFeatures
Repository: tomee
Updated Branches:
refs/heads/develop ec4328466 -> fca7a9f1c
TOMEE-1443 cxf.jaxws.wsFeatures
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/fca7a9f1
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/fca7a9f1
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/fca7a9f1
Branch: refs/heads/develop
Commit: fca7a9f1c669c28885f89936fdc9b92f6836a3a8
Parents: ec43284
Author: Romain Manni-Bucau <rm...@apache.org>
Authored: Tue Nov 11 11:04:47 2014 +0100
Committer: Romain Manni-Bucau <rm...@apache.org>
Committed: Tue Nov 11 11:04:47 2014 +0100
----------------------------------------------------------------------
.../org/apache/openejb/server/cxf/CxfEndpoint.java | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tomee/blob/fca7a9f1/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
----------------------------------------------------------------------
diff --git a/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java b/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
index f90be02..3d907c2 100644
--- a/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
+++ b/server/openejb-cxf/src/main/java/org/apache/openejb/server/cxf/CxfEndpoint.java
@@ -41,9 +41,11 @@ import org.apache.openejb.server.cxf.transport.util.CxfUtil;
import javax.naming.Context;
import javax.xml.transform.Source;
import javax.xml.ws.Binding;
+import javax.xml.ws.WebServiceFeature;
import javax.xml.ws.handler.Handler;
import javax.xml.ws.http.HTTPBinding;
import javax.xml.ws.soap.SOAPBinding;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
@@ -294,6 +296,21 @@ public abstract class CxfEndpoint {
serviceFactory.setDataBinding((DataBinding) instance);
}
+ final String wsFeatures = beanConfig.getProperty(prefix + "wsFeatures");
+ if (wsFeatures != null) {
+ final Collection<Object> instances = ServiceInfos.resolve(availableServices, wsFeatures.split(" *, *"));
+ if (instances != null && !instances.isEmpty()) {
+ final List<WebServiceFeature> features = new ArrayList<>(instances.size());
+ for (final Object i : instances) {
+ if (!WebServiceFeature.class.isInstance(i)) {
+ throw new IllegalArgumentException("Not a WebServiceFeature: " + i);
+ }
+ features.add(WebServiceFeature.class.cast(i));
+ }
+ serviceFactory.setWsFeatures(features);
+ }
+ }
+
return serviceFactory;
}
}