AFAIK , DSS deployer only allow to deploy .dbs file only in past as well , so this shouldn't effect for any users
Thanks and Regards /Jasintha On Thu, Apr 23, 2015 at 1:57 PM, KasunG Gajasinghe <[email protected]> wrote: > > Thanks for clarifications. This change will affect the users who use the > services.xml with DSS though. We should have deprecated the support for > services.xml first. > > On Thu, Apr 23, 2015 at 1:41 PM, Chanika Geeganage <[email protected]> > wrote: > >> Yes, the car file that includes the dataservice config is deployed >> through the default deployer and it expects only a single file. Therefore, >> we couldn't include the service.xml file into the car file. So we remove >> this method and introduced some parameters (transports and security policy) >> into the dataservice config. >> >> Thanks >> >> >> On Thu, Apr 23, 2015 at 10:34 AM, Anjana Fernando <[email protected]> >> wrote: >> >>> Hi Kasun, >>> >>> Yeah, I guess we've removed this functionality, since we were replacing >>> that functionality with additional properties we've introduced, for giving >>> security policies and mentioning transports. @Chanika, I guess that's the >>> case? .. and I guess, the reason for doing this is because of some tooling >>> complications we had with services.xml? .. >>> >>> Cheers, >>> Anjana. >>> >>> On Wed, Apr 22, 2015 at 6:27 PM, KasunG Gajasinghe <[email protected]> >>> wrote: >>> >>>> Hi Anjana/Chanika, >>>> >>>> Did we decide to remove the services.xml support for the data services? >>>> I noticed the below commit which made its way into DSS 3.2.1. >>>> >>>> Thanks. >>>> >>>> ---------- Forwarded message ---------- >>>> From: <[email protected]> >>>> Date: Thu, Aug 28, 2014 at 9:54 AM >>>> Subject: [Commits] [Carbon-platform] svn commit r206697 - in >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4: >>>> . src/main/java/org/wso2/carbon/dataservices/core >>>> To: [email protected] >>>> >>>> >>>> Author: [email protected] >>>> Date: Thu Aug 28 09:54:36 2014 >>>> New Revision: 206697 >>>> URL: http://wso2.org/svn/browse/wso2?view=rev&revision=206697 >>>> >>>> Log: >>>> Fixing DS-953 >>>> >>>> Modified: >>>> >>>> >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/pom.xml >>>> >>>> >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java >>>> >>>> Modified: >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/pom.xml >>>> URL: >>>> http://wso2.org/svn/browse/wso2/carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/pom.xml?rev=206697&r1=206696&r2=206697&view=diff >>>> >>>> ============================================================================== >>>> --- >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/pom.xml >>>> (original) >>>> +++ >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/pom.xml >>>> Thu Aug 28 09:54:36 2014 >>>> @@ -127,7 +127,7 @@ >>>> <dependency> >>>> <groupId>org.wso2.carbon</groupId> >>>> >>>> <artifactId>org.wso2.carbon.dataservices.common</artifactId> >>>> - <version>4.2.3</version> >>>> + <version>4.2.4</version> >>>> </dependency> >>>> <dependency> >>>> <groupId>org.wso2.carbon</groupId> >>>> >>>> Modified: >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java >>>> URL: >>>> http://wso2.org/svn/browse/wso2/carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java?rev=206697&r1=206696&r2=206697&view=diff >>>> >>>> ============================================================================== >>>> --- >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java >>>> (original) >>>> +++ >>>> carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4/src/main/java/org/wso2/carbon/dataservices/core/DBDeployer.java >>>> Thu Aug 28 09:54:36 2014 >>>> @@ -18,6 +18,7 @@ >>>> */ >>>> package org.wso2.carbon.dataservices.core; >>>> >>>> +import org.apache.axiom.om.OMAttribute; >>>> import org.apache.axiom.om.OMElement; >>>> import org.apache.axiom.om.impl.builder.StAXOMBuilder; >>>> import org.apache.axiom.soap.SOAP11Constants; >>>> @@ -35,8 +36,10 @@ >>>> import org.apache.axis2.transport.http.HTTPConstants; >>>> import org.apache.axis2.wsdl.WSDLConstants; >>>> import org.apache.axis2.wsdl.WSDLUtil; >>>> +import org.apache.neethi.Policy; >>>> import org.apache.commons.logging.Log; >>>> import org.apache.commons.logging.LogFactory; >>>> +import org.apache.neethi.PolicyEngine; >>>> import org.apache.ws.commons.schema.utils.NamespaceMap; >>>> import org.wso2.carbon.CarbonConstants; >>>> import org.wso2.carbon.base.MultitenantConstants; >>>> @@ -56,6 +59,7 @@ >>>> import org.wso2.carbon.ndatasource.common.DataSourceConstants; >>>> import org.wso2.carbon.ndatasource.common.DataSourceException; >>>> import org.wso2.carbon.ndatasource.core.DataSourceManager; >>>> +import org.wso2.carbon.registry.core.Registry; >>>> import org.wso2.carbon.user.core.UserStoreException; >>>> import org.wso2.carbon.user.core.service.RealmService; >>>> import org.wso2.carbon.utils.CarbonUtils; >>>> @@ -1070,34 +1074,17 @@ >>>> * if so, the AxisService representing the data service is >>>> applied the instructions from its >>>> * "services.xml". >>>> */ >>>> * - private AxisService handleServicesXML(String dbsPath, >>>> AxisServiceGroup axisServiceGroup,* >>>> - AxisService axisService) throws >>>> DataServiceFault { >>>> + private AxisService handleTransports(DeploymentFileData file, >>>> AxisService axisService) throws DataServiceFault { >>>> try { >>>> - String serviceXMLPath = dbsPath.substring(0, >>>> dbsPath.length() - 4) + >>>> - >>>> DBConstants.DBS_SERVICES_XML_SUFFIX; >>>> - File servicesXMLFile = new File(serviceXMLPath); >>>> - if (servicesXMLFile.exists()) { >>>> - XMLStreamReader parser = >>>> DBUtils.getXMLInputFactory().createXMLStreamReader( >>>> - new >>>> FileInputStream(servicesXMLFile)); >>>> - StAXOMBuilder builder = new >>>> StAXOMBuilder(parser); >>>> - OMElement documentElement = >>>> builder.getDocumentElement(); >>>> - if >>>> (documentElement.getLocalName().equals(DBConstants.AXIS2_SERVICE_GROUP)) { >>>> - HashMap<String, AxisService> >>>> wsdlServices = new HashMap<String, AxisService>(); >>>> - >>>> wsdlServices.put(axisService.getName(), axisService); >>>> - ServiceGroupBuilder sgb = new >>>> ServiceGroupBuilder(documentElement, >>>> - wsdlServices, >>>> this.getConfigContext()); >>>> - axisService = >>>> sgb.populateServiceGroup(axisServiceGroup).get(0); >>>> - } else if >>>> (documentElement.getLocalName().equals(DBConstants.AXIS2_SERVICE)) { >>>> - ServiceBuilder sb = new >>>> ServiceBuilder(this.getConfigContext(), >>>> - axisService); >>>> - axisService = >>>> sb.populateService(documentElement); >>>> - } else { >>>> - throw new >>>> DataServiceFault("services xml file: " + serviceXMLPath + >>>> - " is not valid, >>>> cannot find the 'service' or 'serviceGroup' element"); >>>> - } >>>> - } >>>> + StAXOMBuilder builder = new StAXOMBuilder(new >>>> FileInputStream(file.getFile().getAbsoluteFile())); >>>> + OMElement documentElement = builder.getDocumentElement(); >>>> + OMAttribute transports = documentElement.getAttribute(new >>>> QName(DBSFields.TRANSPORTS)); >>>> + if (transports != null) { >>>> + String [] transportArr = >>>> transports.getAttributeValue().split(" "); >>>> + >>>> axisService.setExposedTransports(Arrays.asList(transportArr)); >>>> + } >>>> } catch (Exception e) { >>>> - throw new DataServiceFault(e, "Error in >>>> processing services.xml"); >>>> + throw new DataServiceFault(e, "Error in >>>> processing transports info"); >>>> } >>>> return axisService; >>>> } >>>> @@ -1113,10 +1100,33 @@ >>>> axisService.setParent(axisServiceGroup); >>>> >>>> axisService.setClassLoader(axisConfig.getServiceClassLoader()); >>>> /* handle services.xml, if exists */ >>>> - this.handleServicesXML(currentFile.getAbsolutePath(), >>>> axisServiceGroup, axisService); >>>> + this.handleTransports(currentFile, axisService); >>>> + this.handleSecurityProxy(currentFile, axisService); >>>> return axisService; >>>> } >>>> >>>> + private AxisService handleSecurityProxy(DeploymentFileData file, >>>> AxisService axisService) throws DataServiceFault{ >>>> + try { >>>> + StAXOMBuilder builder = new StAXOMBuilder(new >>>> FileInputStream(file.getFile().getAbsoluteFile())); >>>> + OMElement documentElement = builder.getDocumentElement(); >>>> + OMElement policyElement= >>>> documentElement.getFirstChildWithName(new QName(DBSFields.POLICY)); >>>> + if (policyElement != null) { >>>> + String policyKey = policyElement.getAttributeValue(new >>>> QName(DBSFields.POLICY_KEY)); >>>> + Policy policy = PolicyEngine.getPolicy( >>>> + DBUtils.getInputStreamFromPath(policyKey)); >>>> + axisService.getPolicySubject().attachPolicy(policy); >>>> + } >>>> + OMElement enableSecElement= >>>> documentElement.getFirstChildWithName(new QName(DBSFields.ENABLESEC)); >>>> + if (enableSecElement != null) { >>>> + >>>> axisService.engageModule(this.configCtx.getAxisConfiguration().getModule( >>>> + DBConstants.SECURITY_MODULE_NAME), >>>> this.configCtx.getAxisConfiguration()); >>>> + } >>>> + }catch (Exception e) { >>>> + throw new DataServiceFault(e, "Error in processing >>>> security policy"); >>>> + } >>>> + return axisService; >>>> + } >>>> + >>>> @SuppressWarnings("unchecked") >>>> private void secureVaultResolve(OMElement dbsElement) { >>>> String secretAliasAttr = dbsElement.getAttributeValue(new >>>> QName(DataSourceConstants.SECURE_VAULT_NS, >>>> _______________________________________________ >>>> Commits mailing list >>>> [email protected] >>>> http://wso2.org/cgi-bin/mailman/listinfo/commits >>>> >>>> >>>> >>>> -- >>>> >>>> *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. >>>> email: kasung AT spamfree wso2.com >>>> linked-in: http://lk.linkedin.com/in/gajasinghe >>>> blog: http://kasunbg.org >>>> >>>> >>>> >>> >>> >>> >>> -- >>> *Anjana Fernando* >>> Senior Technical Lead >>> WSO2 Inc. | http://wso2.com >>> lean . enterprise . middleware >>> >> >> >> >> -- >> Best Regards.. >> >> Chanika Geeganage >> Software Engineer >> Mobile : +94773522586 >> WSO2, Inc.; http://wso2.com >> >> > > > -- > > *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. > email: kasung AT spamfree wso2.com > linked-in: http://lk.linkedin.com/in/gajasinghe > blog: http://kasunbg.org > > > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > -- *Jasintha Dasanayake* *Senior Software EngineerWSO2 Inc. | http://wso2.com <http://wso2.com/>lean . enterprise . middleware* *mobile :- 0711368118*
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
