Hello,

When you start an invocation according to a particular binding, an appropriate provider that supports the corresponding binding namespace is looked up. The logic to do this is in the class org.apache.wsif.util.WSIFPluggableProviders.

You can create a file called "org.apache.wsif.spi.WSIFProvider" under META-INF/services (similar to how you register your XML parser implementation when you use JAXP). In this file you can have  a listof provider classes you wish to register. Each class must of course implement the org.apache.wsif.spi.WSIFProvider interface. These will be picked up dynamically.

You can also register a provider programmatically: the default implementation of the WSIFService interface (org.apache.wsif.base.WSIFServiceImpl) has a method called "setDynamicWSIFProvider" that lets you do this.

You can have multiple providers registered for the same namespace, for example in the standards WSIF installation you will have two SOAP providers (the AXIS provider - org.apache.wsif.providers.soap.apacheaxis.WSIFDynamicProvider_ApacheAxis and the SOAP provider - org.apache.wsif.provider.soap.apachesoap.WSIFDynamicProvider_ApacheSOAP). You can specify the preferred provider in this case through the wsif.properties file. See java/src/wsif.properties for instructions. You can also do this programmatically, using the "overrideDefaultProvider" method on the WSIFPluggableProviders class.

Hope that helps,
Nirmal.


"Roberto Podesta'" <[EMAIL PROTECTED]>

02/05/2003 10:42 AM
Please respond to axis-user

       
        To:        <[EMAIL PROTECTED]>
        cc:        
        Subject:        [wsif] WSIFProvider



When a client code invokes a service with one of the supported binding, how is a WSIFProvider discovered?
tx
Roberto
 
 

Reply via email to