Return-Path: X-Original-To: apmail-tomee-commits-archive@www.apache.org Delivered-To: apmail-tomee-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D4ED51735E for ; Tue, 11 Nov 2014 10:05:22 +0000 (UTC) Received: (qmail 53018 invoked by uid 500); 11 Nov 2014 10:05:22 -0000 Delivered-To: apmail-tomee-commits-archive@tomee.apache.org Received: (qmail 52990 invoked by uid 500); 11 Nov 2014 10:05:22 -0000 Mailing-List: contact commits-help@tomee.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@tomee.apache.org Delivered-To: mailing list commits@tomee.apache.org Received: (qmail 52981 invoked by uid 99); 11 Nov 2014 10:05:22 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Nov 2014 10:05:22 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 83E529AB7C8; Tue, 11 Nov 2014 10:05:22 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: rmannibucau@apache.org To: commits@tomee.apache.org Message-Id: <845712d1620a4642a8ddba26cd25509d@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: tomee git commit: TOMEE-1443 cxf.jaxws.wsFeatures Date: Tue, 11 Nov 2014 10:05:22 +0000 (UTC) Repository: tomee Updated Branches: refs/heads/tomee-1.7.x bf365a947 -> c187bf686 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/c187bf68 Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/c187bf68 Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/c187bf68 Branch: refs/heads/tomee-1.7.x Commit: c187bf686865fc92391c43df35887ea6cd106959 Parents: bf365a9 Author: Romain Manni-Bucau Authored: Tue Nov 11 11:05:13 2014 +0100 Committer: Romain Manni-Bucau Committed: Tue Nov 11 11:05:13 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/c187bf68/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 b7bd7a5..21e953d 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 instances = ServiceInfos.resolve(availableServices, wsFeatures.split(" *, *")); + if (instances != null && !instances.isEmpty()) { + final List 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; } }