I removed the <requestFlow/> tag and updated to the latest nightly drop and the ?wsdl worked. When I run my client, however, I get the same error. I used the WSDL2Java to create the client stubs, and then make these calls:
try { CraftsWeb stub = new CraftsWebServiceLocator().getCraftsWeb(); jButton1.setText(stub.getCount("invlibr.spodetl")); } catch (Exception ex) { ex.printStackTrace(); } I have never gotten a web service to work using the client stubs. I have gotten it to work using DII (is that the right name), but, when you're trying to talk mgmt into using Java and not .Net (which has a very nice interface to web services), DII is not a very elegant solution. Sorry to be such a pain. -- Jason Lee - Programmer 405.745.1789 Hobby Lobby Stores, Inc. -----Original Message----- From: Cédric Chabanois [mailto:[EMAIL PROTECTED]] Sent: Thursday, May 23, 2002 9:27 AM To: '[EMAIL PROTECTED]' Subject: RE: IllegalAccessException I tried your sample (without modifying anything) and it worked ... I got the wsdl ... I used the 05-22-2002 version Cédric Chabanois > -----Message d'origine----- > De : Jason D. Lee [mailto:[EMAIL PROTECTED]] > Envoyé : jeudi 23 mai 2002 15:52 > À : '[EMAIL PROTECTED]' > Objet : IllegalAccessException > > > I'm trying to deploy an extremely simple web service under > Tomcat 4.0, but > I'm not having much luck. When I try to access the URL > http://localhost:8080/axis/services/CraftsWeb?wsdl, I get the > following > error: > > java.lang.IllegalAccessException: craftsweb.CraftsWeb > > Here's the service code: > > package craftsweb; > > //import java.sql.*; > > class CraftsWeb > { > > public CraftsWeb() > { > try > { > //Class.forName("com.ibm.as400.access.AS400JDBCDriver"); > } > catch (Exception ex) > { > ex.printStackTrace(); > } > } > > public String getCount (String aTable) > { > String url = "jdbc:as400:hlinvt"; > String mRetValue = "*** Error ***"; > > return mRetValue; > } > } > > And here's the deployment descriptor: > > <!-- Use this file to deploy some handlers/chains and > services --> > <!-- Two ways to do this: > --> > <!-- java org.apache.axis.client.AdminClient deploy.wsdd > --> > <!-- after the axis server is running > --> > <!-- or > --> > <!-- java org.apache.axis.utils.Admin client|server > deploy.wsdd --> > <!-- from the same directory that the Axis engine runs > --> > > <deployment name="test" xmlns="http://xml.apache.org/axis/wsdd/" > xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> > <service name="CraftsWeb" provider="java:RPC"> > <parameter name="className" value="craftsweb.CraftsWeb"/> > <parameter name="allowedMethods" value="*"/> > <requestFlow type="checks"/> > </service> > </deployment> > > The class file is in the appropriate directory > ($TOMCAT/webapps/axis/WEB-INF/classes/craftsweb/CraftsWeb.class). > Ultimately, this will be accessing AS/400 data, but I have it > really simple > right now, because I'm new to web services and I'm not sure > exactly what I'm > doing. To complicate things, this service will be accessed > via .Net, and I > need to make sure I understand how to make all of that work > before I confuse > things with DB integration and complex return types. > > Has anyone else run into this? Any clues as to what I'm > doing wrong? I had > a working service, but I started over to make sure I had > things right in my > head. It even returned a HashMap successfully to a Java > consumer. Other > than being simpler, this looks exactly like the other from > what I can tell, > but it sure isn't working. Thanks! > > -- > Jason Lee - Programmer > 405.745.1789 > Hobby Lobby Stores, Inc. > >