Return-Path: X-Original-To: apmail-cxf-dev-archive@www.apache.org Delivered-To: apmail-cxf-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id B821C11B13 for ; Mon, 28 Apr 2014 10:17:16 +0000 (UTC) Received: (qmail 44985 invoked by uid 500); 28 Apr 2014 10:17:15 -0000 Delivered-To: apmail-cxf-dev-archive@cxf.apache.org Received: (qmail 44529 invoked by uid 500); 28 Apr 2014 10:17:15 -0000 Mailing-List: contact dev-help@cxf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cxf.apache.org Delivered-To: mailing list dev@cxf.apache.org Received: (qmail 44516 invoked by uid 99); 28 Apr 2014 10:17:14 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Apr 2014 10:17:14 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of ashakirin@talend.com designates 74.201.97.201 as permitted sender) Received: from [74.201.97.201] (HELO mxout.myoutlookonline.com) (74.201.97.201) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Apr 2014 10:17:10 +0000 Received: from mxout.myoutlookonline.com (localhost [127.0.0.1]) by mxout.myoutlookonline.com (Postfix) with ESMTP id 7924B7B3A75; Mon, 28 Apr 2014 06:16:45 -0400 (EDT) X-Virus-Scanned: by SpamTitan at mail.lan Received: from S10HUB001.SH10.lan (unknown [10.110.2.1]) by mxout.myoutlookonline.com (Postfix) with ESMTP id CBEC57B3A71; Mon, 28 Apr 2014 06:16:44 -0400 (EDT) Received: from S10BE002.SH10.lan ([::1]) by S10HUB001.SH10.lan ([::1]) with mapi id 14.01.0438.000; Mon, 28 Apr 2014 06:16:46 -0400 From: Andrei Shakirin To: "dev@cxf.apache.org" CC: Daniel Kulp Subject: RE: Extended support for wsdl11external WS-PolicyAttachments references Thread-Topic: Extended support for wsdl11external WS-PolicyAttachments references Thread-Index: Ac9VZBEL40Lws9UOTCq6UqS/cfrh0QAapOKAAz4S4FA= Date: Mon, 28 Apr 2014 10:16:45 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [95.91.233.249] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org Hi Dan, URIDomainExpressionBuilder [1] was added to support all WSDL11 domain expre= ssions accordingly spec [2] (excluding wsdl11.extension(namespace,identifie= r)). I am thinking about registration of this builder as default bus extension (= the same way as EndpointReferenceDomainExpressionBuilder): - from one side default registration is comfortable for users applying WSDL= 11 expressions in external attachments, this will work just out of the box. - from other side, if user would like to register own domain expression (li= ke in one security integration test [3]), it will be very difficult to repl= ace default builder.=20 The problem is that SpringConfiguredBeanLocator used in DomainExpressionBui= lderRegistry loads Spring beans on first step and then checks for Bus exten= sions (using ExtensionManager). Beans specified in custom configuration wil= l be overwritten by registered bus extension. If client or service is created using spring configuration, it is not trivi= al to replace default DomainExpressionBuilder (it is possible with Extensio= nManagerImpl internal methods, but not convenient). I see following options: (a) Leave the code as is and document that user have to register URIDomainE= xpressionBuilder as bus extension or as a bean to use WSDL11 expressions. (b) Change initialization order in SpringConfiguredBeanLocator to give spri= ng beans higher priority as bus extensions (this can have side effects) (c) Introduce convenient mechanism to replace/remove registered bus extensi= ons or control behaviour of ConfiguredBeanLocator. =20 What is your opinion? May be I am missing something and option (c) is alrea= dy available? Regards, Andrei. [1] https://fisheye6.atlassian.com/changelog/cxf?cs=3Da4ea197c50c99d0c02d92= 26484c3ee0f8fa63b05 =20 [2] http://www.w3.org/TR/2007/NOTE-wsdl11elementidentifiers-20070720/=20 [3] https://fisheye6.atlassian.com/browse/cxf/systests/ws-security/src/test= /java/org/apache/cxf/systest/ws/policy/UriDomainExpression.java=20 > -----Original Message----- > From: Daniel Kulp [mailto:dkulp@apache.org] > Sent: Freitag, 11. April 2014 19:40 > To: dev@cxf.apache.org; Andrei Shakirin > Subject: Re: Extended support for wsdl11external WS-PolicyAttachments > references >=20 >=20 > No objections here. I think we just implemented the few basic places to= meet > whatever test case we were shooting for with the old Microsoft interopera= bility > tests and didn't go much further. >=20 > Dan >=20 >=20 > On Apr 11, 2014, at 5:44 AM, Andrei Shakirin wrote= : >=20 > > Hi, > > > > Currently CXF supports only limited set of references for external WS- > PolicyAttachments (wsa:EndpointReferenceType): > > > > xmlns:test=3D"http://x.y.z/Assertions"> > > > > > > xmlns:wsa=3D"http://www.w3.org/2005/08/addressing"> > > http://x.y.z/GreeterPort > > > > > > > > A > > > > > > > > > > I propose to extend that to support at least some URI Domain Expression= for > wsdl11: > > wsdl11.definitions() > > wsdl11.service(service) > > wsdl11.binding(binding) > > wsdl11.bindingOperation(binding/operation) > > wsdl11.bindingOperation.input(binding/operation) > > wsdl11.bindingOperation.output(binding/operation) > > wsdl11.bindingOperation.fault(binding/operation/fault) > > > > I see that some work was started in cxf-rt-ws-policy > Wsdl11XPointerDomainExpression class, but it seems that is not complete. > > Partly it is also implemented in systests > > org.apache.cxf.systest.ws.policy.UriDomainExpression and > > org.apache.cxf.systest.ws.policy.UriDomainExpressionBuilder > > > > I would create Jira and add support for wsdl11 references. > > Any suggestions / objections? > > > > Regards, > > Andrei. > > >=20 > -- > Daniel Kulp > dkulp@apache.org - http://dankulp.com/blog Talend Community Coder - > http://coders.talend.com