Hi Vincent, Nice hearing that you are interested in this topic.
Well, let's discuss a little bit about intents and configs. First of all, I think you are right. I mean, as far as I know, intents are, as you said, a vendor-agnostic way to configure how a service should be exported. The concept of intents was borrowed from SCA. The objective is to establish a vocabulary between service providers and distribution providers which can be used to communicate aspects usually related to the distribution support. For example, we could use intents like “propagatesTransaction” and “authentication” to say to the distribution provider that we expect our service to be provided in the context of a transaction and that we require an authentication mechanism to be used. As you can see here, we don't give details about how to implement those intents. The distribution provider will itself interpret the intents and determine how it will implement them. However this is not the end of the story... To export a service, a Distribution Provider should create and configure endpoints which will be accessible through the network. Different "kinds of" endpoints are configured in different ways, but the configuration data usually includes host, port and protocols. To configure this kind of stuff we use "Configuration Types" (configs). Maybe it would be better to use a concrete example... Suppose that I create a service and configute it using the following metadata: // This metadata says that the Distribution Provider should: // 1. Enable access to the service through SOAP // 2. Log the correspoding requests service.exported.intents = SOAP, logging // This metadata says that the Distribution Provider should use a configuration named org.apache.cxf.ws to create an endpoint // This configuration is known by CXF/DOSGi only (it is vendor specific) service.exported.configs = org.apache.cxf.ws // However, just the name of a configuration is not enough. I mean, through that name the distribution provider should realize that I want to enable access // to the service using a Web Service endpoint, but what is the address of this endpoint??? // The following metadata completes the org.apache.cxf.ws configuration type and provides more information that is required to create and configure the // corresponding endpoint org.apache.cxf.ws.address = http://localhost:9099/agenciaBBC Well, I hope that this can help a bit... Cheers, Fábio On Wed, Nov 10, 2010 at 9:39 AM, vgirardreydet < [email protected]> wrote: > > Hi Fabio, > > I'm interested in helping on that topic, as I need a correct intents > support > too. > > I have a question before. What's the difference between intents and config > ? > My understanding is that intents are a vendor-agnostic way to configure how > a service should be exported, while service.exported.configs is the > vendor-specific way of specifying. Am I correct ? Would it be true then to > say that to expose a service in SOAP/HTTP, I can either use the "SOAP" > intent or use the "services.exported.configs=org.apache.cxf.ws" property ? > > Thanks, > > Vincent > -- > View this message in context: > http://cxf.547215.n5.nabble.com/DOSGi-Intents-map-tp3238843p3258586.html > Sent from the cxf-user mailing list archive at Nabble.com. > -- Fábio
