Hi, In order to make custom provider, you can use provider handler. This is a way using an axis handler impl as a provider. Does it not meet your requirement?
If you want to use provider handler, the following things must be done. - writing your custom provider class inheireting from BasicHandler (invoke() method should be implemented) - setting a WSDD file like below. <service name="HelloService" provider="Handler"> <parameter name="handlerClass" value="package.YourProvider"/> </service> In this example, when HelloService is invoked, the custom provider (package.YourProvider) is used. ----- Yoshi ----- Original Message ----- From: "Julia Tertyshnaya" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, January 30, 2003 9:01 PM Subject: custom provider deployment problem > Hi everybody, > > I'm trying to deploy a custom provider, but get the following exception: > > 1509431 [HttpProcessor[8080][4]] DEBUG > org.apache.axis.ConfigurationException - Exception: > java.lang.Exception: No provider type matches QName > '{http://xml.apache.org/axis/wsdd/providers/java}diamondRPC' > at > org.apache.axis.ConfigurationException.<init>(ConfigurationException.java:89 > ) > at > org.apache.axis.deployment.wsdd.WSDDException.<init>(WSDDException.java:72) > at > org.apache.axis.deployment.wsdd.WSDDProvider.getInstance(WSDDProvider.java:1 > 41) > at > org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java > :418) > at > org.apache.axis.deployment.wsdd.WSDDDeployment.getDeployedServices(WSDDDeplo > yment.java:566) > at > org.apache.axis.configuration.FileProvider.getDeployedServices(FileProvider. > java:322) > at > org.apache.axis.transport.http.AxisServlet.reportAvailableServices(AxisServl > et.java:584) > at org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:256) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) > at > org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java: > 335) > and so on ... > > I did: > - wrote my provider impl class; > - wrote a class inheireting from WSDDProvider (getName() returns > "diamondRPC"); > - packed these 2 classes into a jar together with a text file named > META-INF/services/org.apache.axis.deployment.wsdd.Provider, which contains > a single line - name of my WsddRPCProvider class: > at.ftw.providers.WsddRPCProvider > - put the jar into classpath and to all locations I could think of: > tomcat/lib; tomcat/common/lib; tomcat/webapps/axis/WEB-INF/lib; > tomcat/webapps/axis/classes; > But it still looks like I'm doing smth. wrong and my classes are not found. > > I use tomcat4.x, axis1.0 > > My deploy.wsdd looks as follows: > > <deployment xmlns="http://xml.apache.org/axis/wsdd/" > xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> > > <service name="RPCInvoker" provider="java:diamondRPC"> > <parameter name="scope" value="session"/> > <parameter name="className" value="at.ftw.diamonds.RPCInvoker"/> > <parameter name="allowedMethods" value="*"/> > </service> > > </deployment> > > Thanks a lot! Any help will be much appreciated. > > Julia >