[ https://issues.apache.org/jira/browse/TUSCANY-3998?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Greg Dritschler reopened TUSCANY-3998: -------------------------------------- I discovered a problem with the original patch. EquinoxServiceDiscover$ServiceDeclarationImpl.getResource() uses Bundle.getResource() to find a resource. This looks at imported packages first. Since it is likely the embedder's jar is importing the Tuscany package, this will get the Tuscany version of the resource which is exactly what we don't want. I have updated the patch with a change to EquinoxServiceDiscover$ServiceDeclarationImpl.getResource() to use Bundle.getEntry() which looks in the bundle only. If that fails, then it tries Bundle.getResource() for compatibility. > Provide a way to override Tuscany "system" definition.xml documents > ------------------------------------------------------------------- > > Key: TUSCANY-3998 > URL: https://issues.apache.org/jira/browse/TUSCANY-3998 > Project: Tuscany > Issue Type: Improvement > Affects Versions: Java-SCA-2.0 > Reporter: Greg Dritschler > Assignee: ant elder > Priority: Minor > Attachments: TUSCANY-3998.patch > > > A Tuscany embedder may need to change certain system definitions, e.g. a > bindingType or an implementationType. > System definitions are found using the ServiceDiscovery mechanism. > DefaultDefinitionsExtensionPoint looks for jars/bundles that have a > META-INF/services/org.apache.tuscany.sca.definitions.xml.Definitions file. > definitionsDeclarations = > registry.getServiceDiscovery().getServiceDeclarations(DEFINITIONS_FILE); > This collects all definitions documents in the runtime. There is no way to > override one definitions document with another. > I am attaching a patch to address this. It changes the > getServiceDeclarations() call to get declarations in ranked order. When > processing the returned declarations, it now processes only the first > resource with a given path. > The embedder's service declaration must use the same resource name as the > Tuscany definition it replaces and it must have a higher ranking attribute. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira