Products used:
  Apache SOAP 2.2
  Tomcat 3.2.2
  Windows NT

I'm not sure if the following is a Tomcat issue or a SOAP issue or just a feature:

Tomcat loads the classes that are in the WEB-INF/classes and WEB-INF/lib directories.  
Therefore, you can deploy your application to either locations as a jar or a tree of 
class files.  If you have a browser-based JSP/servlet application there is no problem.

The problem arises when you try to reference one of the (above) application classes 
that has been exposed as a web-service.  One would assume that since Tomcat has loaded 
it (the application class), it would be accessible to the rpcrouter.  Au contraire!  
Try as you might you get the BadTargetObjectURI fault code.  

The only ways around it that I have found are:

(a)  to explode the deployed jar file to some other location and add that location to 
Tomcat's classpath.
       This is ugly because I have to duplicate my deployment -- one for web users and 
one to please SOAP.

OR

(b) to deploy the application as a tree of classes under the WEB-INF/classes directory 
and include that directory in Tomcat's classpath.  This is equally abhorrent -- 
because I'd rather deploy as a Jar file and secondly if Tomcat loads it anyway, why 
does one have to include it in it's classpath?



Sri

Reply via email to