You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Kenneth Partlow <kp...@cysive.com> on 2001/06/22 17:30:51 UTC

Custome Java Message Provider

We had the need on our project to use a custom java message provider.
To do this I had to modify MessageRouterServlet a bit for if you use
a user defined provider they expect you to use the bsf stuff (by my
understanding).  We wanted to use a variation of the MsgJavaProvider class
so we set the service class to be our provider and still left our provider
type to PROVIDER_JAVA.  What we had to do in the servlet was make sure that
even if you are using a PROVIDER_JAVA you can specify a user_defined service
class.

I'm not sure what the soap-dev's prefer to this method, but this method
worked
for me.


**** Code Snippet  *****
	  Provider provider;
        if ( dd.getProviderType() == DeploymentDescriptor.PROVIDER_JAVA ) {
          // Handle Java based services

	    ********  Modified Code  *****************
	    String providerClass = dd.getServiceClass();

          if (providerClass == null)
          	providerClass = "org.apache.soap.providers.MsgJavaProvider";

		  provider = (Provider)Class.forName(providerClass).newInstance();
	    *********  End Modified Code *******************

        } else if (dd.getProviderType() ==
                   DeploymentDescriptor.PROVIDER_USER_DEFINED) {
          // Handle user-defined providers
          provider = ServerUtils.loadProvider(dd, reqCtx);
        } else {
          // Handle scripts
          provider = new org.apache.soap.providers.MsgJavaProvider();
        }
**** Code Snippet